星羽1704

在 vue 中多次切换相同一个路由会存在问题。

vue-router.js:2071 Uncaught (in promise) NavigationDuplicated: Avoid redundant navigation to current location: "/xxxx"

解决方案:

1、每次切换路由之前手动判断:

if(this.$route.name!='xxxx'){
    this.$router.push({name:'xxxx'});
}

2、在创建路由规则对象之后加入如下配置:

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