"use client" import { useCallback, useMemo, useState } from "react" import { usePathname } from "next/navigation" import Link from "next/link" import Box from "@mui/material/Box" import Menu from "@mui/material/Menu" import MenuItem from "@mui/material/MenuItem" import Stack from "@mui/material/Stack" import IconButton from "@mui/material/IconButton" import LanguageIcon from "@mui/icons-material/Language" import { PageRoute } from "@/utils/constant" import { getAppAbsPath } from "@/actions/path" import { AbsoluteLink, ActionContentContainer, AppBar, AppToolbar, MenuTab, MenuTabs, } from "./styles" export default function PageHeader() { const [langAnchorEle, setLangAnchorEle] = useState(null) const changeLang = useCallback(async () => { setLangAnchorEle(null) const res = await getAppAbsPath(3, 7) console.log("=====res", res) }, []) const headerRoutes = useMemo( () => Object.values(PageRoute).filter((route) => route !== PageRoute.Root), [] ) const pathname = usePathname() const currentRoute = pathname.split("/")[1] as PageRoute | undefined return ( {headerRoutes.map((route) => ( {route} } /> ))} setLangAnchorEle(e.currentTarget)} > setLangAnchorEle(null)} slotProps={{ list: { "aria-labelledby": "basic-button" } }} > changeLang()}>English changeLang()}>中文 ) }