vueRouter:Avoided redundant navigation to current location

本文解决ElementUI中Vue-Router3.0+版本在重复点击相同菜单时出现的错误,通过修改router/index.js文件中的VueRouter原型方法push,避免了冗余导航导致的警告。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、问题描述:

最近使用ElementUI的NavMenu 导航菜单组件的时候,发现一个导航被重复点击的时候,

element-ui.common.js?b705:3354 Error: Avoided redundant navigation to current location: "/management/arrange".
    at createRouterError (vue-router.esm.js?fe79:2060)
    at createNavigationDuplicatedError (vue-router.esm.js?fe79:2033)
    at HTML5History.confirmTransition (vue-router.esm.js?fe79:2182)
    at HTML5History.transitionTo (vue-router.esm.js?fe79:2123)
    at HTML5History.push (vue-router.esm.js?fe79:2479)
    at VueRouter.push (vue-router.esm.js?fe79:2903)
    at VueComponent.routeToItem (element-ui.common.js?b705:3381)
    at VueComponent.handleItemClick (element-ui.common.js?b705:3348)
    at invokeWithErrorHandling (vue.runtime.esm.js?0261:1854)
    at VueComponent.Vue.$emit (vue.runtime.esm.js?0261:3888)

2、解决方案,在router文件目录index.js添加下面代码

// 解决ElementUI导航栏中的vue-router在3.0版本以上重复点菜单报错问题
const originalPush = VueRouter.prototype.push
VueRouter.prototype.push = function push(location) {
  return originalPush.call(this, location).catch(err => err)
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值