React Ant Design Menu导航菜单跳转
昨天小编在学习React使用Ant Design Menu导航菜单时,发现Ant Design4.2版本之后的 Menu 导航菜单更新了写法。新写法不再需要自行拼接 JSX,直接采用数组写法直接用 items={数组名}就可以了。
原写法
<Menu mode="horizontal" defaultSelectedKeys={['mail']}><Menu.Item key="mail" icon={<MailOutlined />}>Navigation One</Menu.Item><Menu.SubMenu key="SubMenu" title="Navigation Two - Submenu" icon={<SettingOutlined />}><Menu.Item key="two" icon={<AppstoreOutlined />}>Navigation Two</Menu.Item><Menu.Item key="three" icon={<AppstoreOutlined />}>Navigation Three</Menu.Item><Menu.ItemGroup title="Item Group"><Menu.Item key="four" icon={<AppstoreOutlined />}>Navigation Four</Menu.Item><Menu.Item key="five" icon={<AppstoreOutlined />}>Navigation Five</Menu.Item></Menu.ItemGroup></Menu.SubMenu></Menu>
现写法
const items=[{ label: '菜单项一', key: 'item-1' }, // 菜单项务必填写 key{ label: '菜单项二', key: 'item-2' },{ label: '菜单项三', key: 'item-3' },{ label: '菜单项四', key: 'item-4' }
]
const App = () => {return (<MenudefaultSelectedKeys={['1']}mode="inline"items={items}/>);
};
虽然这种写法大大减少了我们的工作量,但随之而来的又有了新的问题。该怎么跳转???之前写JSX的时候可以直接在里面用<link ></link>来跳转,但现在添加不了link。小编因为刚接触React,所以就卡壳了,搜了半天终于知道如何解决这个问题。因此写篇文章来记录一下自己学习React所遇到的问题。
解决方法
在更新后 Menu导航菜单可以绑定点击事件,可以返回 key, keyPath等值
例如
const items = [{key: '/Article',icon: <HomeOutlined />,label: "数据概览"},{key: '/',icon: <DiffOutlined />,label: "内容管理"},{key: '/Publish',icon: <EditOutlined />,label: "发布文章"}]<Menu theme="dark" onClick={onClick} defaultSelectedKeys={[pathname]}
selectedKeys={[pathname]} mode="inline"
style={{ height: '100%', borderRight: 0 }}
items={items} ></Menu>const onClick = (e) => {console.log(e)}
所以我们可以用<link>绑定地址跳转写法用到我们数组里来,把数组里的key写成成我们要跳转的页面。再通过点击能拿到我们的跳转页面了。
拿到地址以后,用react-route-dom里的useNavigate来进行跳转就行
切记,一定要再方法里创建!!!小编之前糊涂看到Ant Design组件在外面创建也就跟着在外面创建,结果疯狂报错。都是血的教训。
以上就是解决Ant Design4.2之后 Menu导航菜单跳转过程了,供大家学习。小编刚学习React,有不对的地方下嘴轻点,小编嘴笨怕争不过。
React Ant Design Menu导航菜单跳转相关推荐
- ant vue 树形菜单横向显示_ant design vue menu 导航菜单
ant design vue menu 导航菜单 ant design vue menu 导航菜单是一个网站或者系统的重要功能,通过导航可以对网站或者系统的功能进行分门别类. 水平导航菜单 例子 首页 ...
- ant design Menu组件子菜单样式设置
ant design Menu组件子菜单样式设置 Menu二级子菜单宽度较宽,直接设置width不起作用,会被他自带的min-width覆盖 解决办法:设置组件的全局样式,提升优先级,如下所示: &l ...
- vue、Menu 导航菜单、Menu属性事件、vue Menu 全部导航菜单、vue Menu 全部属性事件
vue.Menu 导航菜单.Menu属性事件.vue Menu 全部导航菜单.vue Menu 全部属性事件 设计规则 何时使用 代码演示 顶部导航 内嵌菜单 缩起内嵌菜单 只展开当前父级菜单 垂直菜 ...
- BootstrapBlazor实战 Menu 导航菜单使用(2)
接上篇: B08. BootstrapBlazor实战 Menu 导航菜单使用(1) 实战BootstrapBlazorMenu 导航菜单的使用, 以及整合Freesql orm快速制作菜单项数据库后 ...
- React Ant design pro 访问服务器接口,获取数据显示
React Ant design pro 访问服务器接口 一.前两天更新了Ant design pro环境搭建,需要了解的小伙伴可以看一下之前的内容,还有react基础教程噢. 二.框架搭建完后,一般 ...
- react ant design pro typescript springboot activiti权限、工作流框架
是什么? 使用springboot,activiti,mybatis,react,ant design pro,typescript 开发的后台管理系统(包含权限管理.工作流等功能),真正前后端分离的 ...
- 使用create-react-app搭建TypeScript+React+Ant Design开发环境
一.使用create-react-app创建一个支持TypeScript+React的开发环境: 要创建一个支持TypeScript的Create React App项目,可以运行: npx crea ...
- 从Antd 源码到自我实现之 Menu 导航菜单
Antd Menu 简述 Menu 为页面和功能提供导航的菜单列表. 导航菜单是一个网站的灵魂,用户依赖导航在各个页面中进行跳转.一般分为顶部导航和侧边导航,顶部导航提供全局性的类目和功能,侧边导航提 ...
- React + Ant Design Pro项目实现keep-alive页签
背景 PC端管理系统,采用 ant design pro 方案,它是阿里的一个管理系统框架,技术栈是react. 相比vue,react一个先天不足是不支持 keep-alive,所以管理系统中的多页 ...
最新文章
- libgdx 3D 测试一
- 进入全屏 nodejs+express+mysql实现restful风格的增删改查示例
- 面试题 数组长度可否赋值
- mac电脑的磁盘空间变得越来越小
- xshell xftp免费版下载
- wifi控制基于STM32与NFC的万能红外遥控器—毕业设计(1)
- 全局钩子,解决命名烦恼!——代码翻译小工具。
- Product UVA - 10106(大数乘法)
- 如何使用Reviewboard进行代码Review?
- 每日一学20——凉鞋的简易消息机制
- 分布式光伏站远程监控组网解决方案
- 最新apktool_2.4.1
- 使用OpenCv中Mat进行水平投影与垂直投影并实现字符切分
- 实现Modbus设备转Profinet IO协议接西门子PLC的解决方案
- Appium基础篇10-元素定位之by_accessibility_id
- oracle中创建数据库用户,并授权
- python 读取excel 批量 重命名文件夹
- 十、软件项目开发总结报告-模板
- 解决office稿纸加载项,打开word老弹出窗口的问题
- 【scp】Windows 下scp报错 bad permissions
热门文章
- 【MySQL】空值(Null)和空字符串(‘’)的区别
- LR11安装和配置教程
- mysql替代符号_SQL语言之和符号(amp;)替换
- Linux系统内存知识总结
- 通过数组下标为数组赋值(C语言)
- 【STM32F429】第6章 ThreadX NetXDUO网络协议栈移植到STM32F429
- ubuntu16.04 Intel Realsense D435i 环境安装
- plotly使用问题
- PyTorch——自注意力(self-attention)机制实现(代码详解)
- 【ROS入门21讲】发布者Publisher的编程使用