首页 >> 大全

antd-vue a-menu菜单绑定路由相关问题

2023-09-15 大全 23 作者:考证青年

antd-vue a-menu菜单绑定路由相关问题

tips: 路由绑定、菜单跳转、网页后退高亮显示

1. 问题描述

使用antd-vue 的 a-布局和a-menu菜单做一个侧边栏菜单,加入vuex配置侧边栏点击事件,实现点击菜单改变路由展示中间部分内容的功能

但是出现了问题:

2. 解决方法

对路由变化进行判断/修改 的push与方法

借助a-menu 的属性::绑定路由地址,就能实现随着路由产生变化

3. 代码

****** 重复点击报错解决:******

方法1:对路径进行判断

methods: {handelClick(item) {//判断点击路径与点击菜单路径是否不同//有效避免重复替换相同路径if (item.key !== this.$route.path) {this.$router.push(item.key)console.log(this.$route.path)console.log(item)}}}

方法2:在main.js中添加代码

import VueRouter from 'vue-router'
Vue.use(VueRouter)const originalReplace = VueRouter.prototype.replace;
VueRouter.prototype.replace = function replace(location) {return originalReplace.call(this, location).catch(err => err);
};
const originalPush = VueRouter.prototype.push
VueRouter.prototype.push = function push(location) {return originalPush.call(this, location).catch(err => err)
}

****** 浏览器刷新/后退 菜单高亮区域:******

完整代码:


关键代码:

极路由远程mac绑定_小米路由绑定_

注册/**
*在a-menu中设置的:selectedKeys="key",绑定当前的路由"[$route.path]"
*所以在a-menu-item的key需要做出改变,改为路径
*同时也方便了后续处理点击事件传入的路径
*/

顺便说下菜单的点击事件:

上面好像说了

演示结果:

最后,有说明不清楚的地方欢迎评论指出

关于我们

最火推荐

小编推荐

联系我们


版权声明:本站内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 88@qq.com 举报,一经查实,本站将立刻删除。备案号:桂ICP备2021009421号
Powered By Z-BlogPHP.
复制成功
微信号:
我知道了