vue-router query和params传参(接收参数)$router $route的区别

发布时间:2019-05-15 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了vue-router query和params传参(接收参数)$router $route的区别脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

今天做项目时踩到了vue-router传参的坑(query和params),所以决定总结一下二者的区别。

直接总结干货!!!

1.query方式传参和接收参数

传参: 
this.$router.push({
        path:'/xxx',
        query:{
          id:id
        }
      })
  
接收参数:
this.$route.query.id

注意:传参是this.$router,接收参数是this.$route,这里千万要看清了!!!

this.$router 和this.$route有何区别?
在控制台打印两者可以很明显的看出两者的一些区别:

vue-router  query和params传参(接收参数)$router $route的区别

  • 1.$router为VueRouter实例,想要导航到不同URL,则使用$router.push方法
  • 2.$route为当前router跳转对象,里面可以获取name、path、query、params等

2.params方式传参和接收参数

传参: 
this.$router.push({
        name:'xxx',
        params:{
          id:id
        }
      })
  
接收参数:
this.$route.params.id

注意:params传参,push里面只能是 name:'xxxx',不能是path:'/xxx',因为params只能用name来引入路由,如果这里写成了path,接收参数页面会是undefined!!!

另外,二者还有点区别,直白的来说query相当于get请求,页面跳转的时候,可以在地址栏看到请求参数,而params相当于post请求,参数不会再地址栏中显示

vue-router  query和params传参(接收参数)$router $route的区别

vue的自学之路还得继续走,坑还会继续踩,下一个坑会是神马...

脚本宝典总结

以上是脚本宝典为你收集整理的vue-router query和params传参(接收参数)$router $route的区别全部内容,希望文章能够帮你解决vue-router query和params传参(接收参数)$router $route的区别所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签:Vue