解决vue项目路由出现message: "Navigating to current location (XXX) is not allowed"的问题(点击多次跳转)


如果网页跳转用的方法传参去跳转: (点击多次链接会出现错误)

<a class="" href="javascript:void(0);" @click="goto('M000989')">跳转</a>

 

    goto: function(mallCode){
      this.$router.push({
        path: '/about',
        //name: 'about',
        query: {
          mallCode: 'M000989'
        }
      })
    },

 

 

这个的原因: 

原因:在路由中添加了相同的路由。
解决:
重写路由的push方法

在src/router/index.js 里面import Router from 'vue-router'下面写入下面方法即可

/**
 * 重写路由的push方法
 */
const routerPush = Router.prototype.push
Router.prototype.push = function push(location) {
  return routerPush.call(this, location).catch(error=> error)
}

 

 

 

 

转 : https://www.cnblogs.com/lxk0301/p/11671256.html

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM