您的位置:首页 > 产品设计 > UI/UE

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

2018-04-01 19:51 621 查看

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

直接总结干货!!!

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

传参:
this.$router.push({
path:'/xxx'
query:{
id:id
}
})

接收参数:
this.$route.query.id


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


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的自学之路还得继续走,坑还会继续踩,下一个坑会是神马…
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息