美文网首页
vue3.0中vue-router报错解决方案

vue3.0中vue-router报错解决方案

作者: 随笔记呀 | 来源:发表于2020-03-27 17:49 被阅读0次
在工作中遇到了这个问题,当路由跳转到相同的地址的时候,控制台会报这个错误: image


最后经过查官方文档,以及百度。原来vue-router>=3.0版本回调形式以及改成promise api的形式了,返回的是一个promise,如果路由地址跳转相同,且没有捕获到错误,控制台始终会出现上图所出现的问题。3.0以下版本则不会出现。找到了几种解决方法:

方法一:

安装vue-router3.0以下版本:先卸载3.0以上版本然后再安装旧版本:

npm install @vue-router2.8.0 -S

方法二:

针对于路由跳转相同的地址添加catch捕获以下异常:

this.$router.push('/location').catch(err => {console.log(err)})

方法三:

在main.js下注册一个全局函数即可:

import Router from 'vue-router'

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

我用的是第三种方法解决的,亲测可用,ღ( ´・ᴗ・` )比心

相关文章

网友评论

      本文标题:vue3.0中vue-router报错解决方案

      本文链接:https://www.haomeiwen.com/subject/lmlruhtx.html