报错信息:

Uncaught (in promise) Error: Redirected when going from "/xxx" to "/xxx" via a navigation guard.

翻译:

通过导航卫士从“/xxx”转到“/xxx”时重定向

个人理解:

假设当前在 /abc 这个路径,然后还要往 /abc 这路径跳转。

程序一看,不对啊,你这俩路径一样啊?此时就会就报这个错

虽然它报错了,但并不会影响程序正常执行

网上的解决办法我看了很多,大多是属于这几种思路:

  • 定时清空控制台(不推荐,属于投机取巧)
  • 更换vue router版本
  • 处理throw的异常

而且这几种思路解决起来确实比较麻烦,

我个人觉得..

问题要回归本质:

当路径一样的时候,就不要跳了,自然就不报错了...

if( from.path == to.path ){
    // 不要跳转了
    console.log('提示: 已经在个路径里了')
}else{
    // 正常跳转
}

Logo

基于 Vue 的企业级 UI 组件库和中后台系统解决方案,为数万开发者服务。

更多推荐