import Link from 'next/link' import { useRouter } from 'next/router' import LogoBar from './LogoBar' import React from 'react' import Collapse from '@/components/Collapse' import GroupMenu from './GroupMenu' import { useGlobal } from '@/lib/global' import CONFIG_MEDIUM from '../config_medium' /** * 顶部导航栏 + 菜单 * @param {} param0 * @returns */ export default function TopNavBar(props) { const { className, customNav } = props const router = useRouter() const [isOpen, changeShow] = React.useState(false) const { locale } = useGlobal() const defaultLinks = [ { icon: 'fas fa-th', name: locale.COMMON.CATEGORY, to: '/category', show: CONFIG_MEDIUM.MENU_CATEGORY }, { icon: 'fas fa-tag', name: locale.COMMON.TAGS, to: '/tag', show: CONFIG_MEDIUM.MENU_TAG }, { icon: 'fas fa-archive', name: locale.NAV.ARCHIVE, to: '/archive', show: CONFIG_MEDIUM.MENU_ARCHIVE }, { icon: 'fas fa-search', name: locale.NAV.SEARCH, to: '/search', show: CONFIG_MEDIUM.MENU_SEARCH } ] const navs = defaultLinks.concat(customNav) const toggleMenuOpen = () => { changeShow(!isOpen) } return
{/* 折叠菜单 */}
{/* 图标Logo */} {/* 右侧功能 */}
{isOpen ? : }
{/* 顶部菜单 */}
{navs && navs.map(link => { if (link.show) { const selected = (router.pathname === link.to) || (router.asPath === link.to) return
{link.name}
{link.slot}
} else { return null } })}
}