传参是前端经常需要用的一个操作,很多场景都会需要用到上个页面的参数,比如传个id获取个详情信息,今天咱们就来看看Vue中是怎么实现这种传递参数得
在Vue中提供了两种方法来进行路由传参:query 和 params ,下面来看看他们两个得区别在哪里
query语法:
this.$router.push({path:"地址",query:{id:"123"}}); 这是传递参数
this.$route.query.id; 这是接受参数
params语法:
this.$router.push({name:"地址",params:{id:"123"}}); 这是传递参数
this.$route.params.id; 这是接受参数
以上就是这两种方法得语法,那大家也能从中看出一点区别:
1.首先就是写法得不同,query 得写法是 用 path 来编写传参地址,而 params 得写法是用 name 来编写传参地址,你可以看一下编写路由时候得相关属性,你也可以输出一下 路由对象信息 看一下
2.接收方法不同, 一个用 query 来接收, 一个用 params 接收 ,总结就是谁发得 谁去接收
3.query 在刷新页面得时候参数不会消失,而 params 刷新页面得时候会参数消失,可以考虑本地存储解决
4.query 传得参数都是显示在url 地址栏当中,而 params 传参不会显示在地址栏
这里说一下 route 是路由对象信息 而 router 是路由对象的 实例,区分一下
以上就是对 VueRouter 两种传参的讲解和认知(这种写法是编程式写法)附上官方地址编程式导航, 还有那句话:如有不对之处及不周之处请大佬们指出,也希望对一些人有所帮助,咱们下次再会!