vue router 传参获取不到的解决方式

今天小编就为大家分享一篇vue router 传参获取不到的解决方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

在当前路由中有一个toArticle方法可以跳转到article页面

methods:{ toArticle:function(index) { this.$router.push({path:'/article',params:this.blogList[index]}); } }

在article中接受不到params

mounted(){ console.log(this.$route.params) //这里输出undifined }

导致这样的原因是因为params需要通过name来获取,这里就要明白query和params的区别了

query要用path来引入,接收参数都是this.$route.query.name。query类似于ajax中get传参,即在浏览器地址栏中显示参数。

params要用name来引入,接收参数都是this.$route.params.name。params则类似于post,即在浏览器地址栏中不显示参数。

所以以上带面做下面这样的修改就可以获取数据:

methods:{ toArticle:function(index) { this.$router.push({name:'article',params:this.blogList[index]}); } }

以上这篇vue router 传参获取不到的解决方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:http://www.heiqu.com/0ae5b80ecc9d515e60b951019465d1c3.html