/** * 顶部导航栏 */ import React from 'react'; import { Layout, Button, Dropdown, Avatar, Space } from 'antd'; import { MenuFoldOutlined, MenuUnfoldOutlined, UserOutlined, LogoutOutlined, SettingOutlined, } from '@ant-design/icons'; import { useNavigate } from 'react-router-dom'; import { useUIStore } from '@/store/uiStore'; import { useAuthStore } from '@/store/authStore'; import { useLogout } from '@/hooks/useAuth'; import type { MenuProps } from 'antd'; const { Header: AntHeader } = Layout; const Header: React.FC = () => { const navigate = useNavigate(); const sidebarCollapsed = useUIStore((state) => state.sidebarCollapsed); const toggleSidebar = useUIStore((state) => state.toggleSidebar); const user = useAuthStore((state) => state.user); const logoutMutation = useLogout(); const menuItems: MenuProps['items'] = [ { key: 'profile', icon: , label: '个人设置', onClick: () => navigate('/profile'), }, { key: 'settings', icon: , label: '账号设置', onClick: () => navigate('/profile/settings'), }, { type: 'divider', }, { key: 'logout', icon: , label: '退出登录', onClick: () => logoutMutation.mutate(), }, ]; return (