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.route有何区别?
在控制台打印两者可以很明显的看出两者的一些区别:

- 1.
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!!!
