react项目实战学习笔记-学习19-下拉菜单

import React, { useEffect, useState } from 'react'
import logoImg from '../assets/logo.png'
import { Menu, Dropdown, message } from 'antd';
import { CaretDownOutlined } from '@ant-design/icons';
import { useNavigate } from 'react-router-dom'
function Header(props) {
const navigate = useNavigate()
// const [avatar, setAvatar] = useState(defaultAvatar)
const [username, setUsername] = useState("游客")
// 退出登录
const logout = () => {
message.success('退出成功,即将返回登录页')
localStorage.clear(); // 清除localStorage中的数据
setTimeout(() => navigate('/login'), 1500)
}
const menu = (
<Menu>
<Menu.Item key={1}>修改资料</Menu.Item>
<Menu.Divider />
<Menu.Item key={2} onClick={logout}>退出登录</Menu.Item>
</Menu>
);
return (
<header>
<img src={logoImg} alt="" style={{width:"100px",height:"20px"}} className="logo" />
<div className="right">
<Dropdown overlay={menu}>
<a className="ant-dropdown-link" onClick={e => e.preventDefault()}>
<img className="avatar" alt="" />
<span>{username}</span>
<CaretDownOutlined />
</a>
</Dropdown>
</div>
</header>
)
}
export default Header

总结

posted @   前端导师歌谣  阅读(49)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示