解决方法参考原文,地址:https://blog.csdn.net/weixin_43202608/article/details/98884620

问题:vue router 报错: Uncaught (in promise) NavigationDuplicated {_name:""NavigationDuplicated"... 的解决方法!

描述:在学习vue的router-link的操作中发现,当我有一排按钮,这排router-link对应的组件是同一个,只是不同的按钮请求的数据不同,当我每次进行刷新会报这个错误,这个错误却不影响使用;

解决:

据翻看大佬的解释,vue-router ≥3.0版本回调形式以及改成promise api的形式了,返回的是一个promise,如果没有捕获到错误,控制台始终会出现如图的警告,针对于路由跳转相同的地址,目前的解决方案: this.$router.push('/location').catch(err => { console.log(err) })

大佬说是在main.js文件下加入如下代码:

import Router from 'vue-router'

const originalPush = Router.prototype.push
Router.prototype.push = function push(location) {
  return originalPush.call(this, location).catch(err => err)
}
--------------------- 
版权声明:本文为CSDN博主「织咲」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43202608/article/details/98884620

结果:加入后亲测有效,确实不再提示这个错误了

Logo

前往低代码交流专区

更多推荐