vue-router传参方式:query、params区别

传参方式:query、params
区别:

queryparams
可以与name或者path搭配使用只能与name搭配使用
不需要在路由中声明必须在路由中声明(如果不在路由中声明,也是可以传递到下一个路由中的。如果未声明,则在路径中不回显示参数值,但页面刷新会丢失参数。)
在路径中会显示参数名+参数值在路径中只会显示参数值

参数值为对象
query、params参数值都可以直接传递一个对象,对象在路径上会显示 %5Bobject%20Object%5D,可以接收参数,参数就是该对象,但页面刷新参数值会变成 [object Object]

props
在路由中可以定义 props,取代与 $route的耦合,这样路由对应的vue文件即可以作为一个页面使用,也可以单独作为组件使用,提高代码的复用性。
详细用法参见官方API:https://router.vuejs.org/zh/guide/essentials/passing-props.html

使用建议
在参数固定且必传的情况下,建议使用params方式,这样可以在路由层次控制参数传递,还可以防止用户自己修改访问地址导致页面报错(params声明后如果不传参数会成为无匹配路径)。
大批量的参数传递建议使用vuex,而不是在路由中传递(浏览器的地址长度限制)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值