• 记:vue-router报错: Uncaught (in promise) NavigationDuplicated: Avoided redundant navigation to current location


    记录一下踩坑过程:

      本来项目好好的,拉完代码,重新安装了node_modules,其它的都没动,然后使用路由 push 的时候就会报这个错。完全不知道为什么

     

     然后找度娘,结果基本上千篇一律都是在 main.js 中添加如下代码

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

    还有就是说 vue-router版本有问题。我就不明白了,为什么以前都好好的,突然就会出错呢。

    然后我看了下 package.json 中的是 3.0.7 也不会有  vue-router 3.1及以上版本 push 报错 的问题。

    然后我再看 package-lock.json 中的 vue-router 的版本,结果是 3.4.3。难怪删除 node_modules 再重新安装也会报错。

    我丢。。。。。

    最后再看 node_modules 里面 vue-router的版本也是 3.4.3 。。。

    解决办法:

    1. package-lock.json 的 vue-router 一项改成 如下的内容

    "vue-router": {
        "version": "3.0.7",
        "resolved": "https://registry.npm.taobao.org/vue-router/download/vue-router-3.0.7.tgz",
        "integrity": "sha1-s2yhB7SsuP9bxP+CRYQFnCP8uHs="
    }

    2. 重新安装 vue-router 3.0.7的版本。如果实在要安装vue-router 3.1及以上的新版本,在 main.js 中添加那段代码即可

  • 相关阅读:
    《架构整洁之道》阅读笔记
    设计模式——单例模式
    设计模式——工厂模式使用
    记一次同事安装我自定义一Python3 SDK在window10安装失败情况
    CentOS7常用的一些命令
    Java
    Java
    Java
    Java
    python
  • 原文地址:https://www.cnblogs.com/zjjDaily/p/13674232.html
Copyright © 2020-2023  润新知