首页 > 编程开发 > JavaScript    日期:2020-05-27 / 来自互联网 / 浏览

版本:3.1.x

Vue-router 报错NavigationDuplicated的解决方法

报错原因:

使用push()、replace()进行导航时,不能重复导航到当前路由。

解决办法:

方法1:在定义路由的文件中router/index.js

const originalPush = VueRouter.prototype.push
VueRouter.prototype.push = function push (location) {
 return originalPush.call(this, location).catch(err => err)
}

const originalReplace = VueRouter.prototype.replace
VueRouter.prototype.repalce = function replace (location) { 
 return originalReplace.call(this, location).catch(err => err)
}

方法2:在调用push()、replace()方法时,catch

this.$router
  .replace(this.path)
  .catch(err => err) 

说明:第一种方法好像对replace()没有作用。

觉得上面的内容有用吗?快来点个赞吧!

点赞() 我要打赏

温馨提示 : 本站内容来自会员投稿以及互联网,所有源码及教程均为作者总结编辑,请大家在使用过程中提前做好备份,以免发生无法预知的错误,源码类教程请勿直接用于生产环境!

 可能感兴趣的文章