Redirected when going from "x" to "x" via a navigation guard

当我从登录页/user/login 登录成功后跳转到dashboard/Analysis,页面报错Redirected when going from "xxxx" to "xxxxx" via a navigation guard.

各位大神是否遇到过??

代码如下:
routers.js
routers.js

index.js
index.js

登录成功后跳转
this.$router.push({ path: '/dashboard/Analysis' })

阅读 8.5k
1 个回答
新手上路,请多包涵

原因:
V3.1.0版本里面新增功能:push和replace方法会返回一个promise, 你可能在控制台看到未捕获的异常。

解决:
在你的routers.js中,引入Router后,对Router原型链上的push、replace方法进行重写,这样就不用每次调用方法都要加上catch。

import Router from 'vue-router'

const originalPush = Router.prototype.push
Router.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)
}

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题