在 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) };