Vue: Redirected when going from “x“ to “x“ via a navigation guard

@vue/cli 4.3.1

vue-router: ^3.3.2

使用路由重定向做了登录验证后, 报错

Error: Redirected from “/login” to “/index” via a navigation guard.

 

解决方案:

1. 删除 node_modules ,到 package.json 中将 vue-router 改为 3.0.7 ,重新 npm i  (未测试)

 

2. 在 route.js 下粘贴一下代码 (使用中)

// 解决Vue-Router升级导致的Uncaught(in promise) navigation guard问题
const originalPush = VueRouter.prototype.push
VueRouter.prototype.push = function push (location, onResolve, onReject) {
  if (onResolve || onReject) return originalPush.call(this, location, onResolve, onReject)
  return originalPush.call(this, location).catch(err => err)
}

 参考资料:

https://forum.vuejs.org/t/topic/97260

https://www.cnblogs.com/pjw233/p/12658849.html

你可能感兴趣的:(Vue,JS)