关于路由跳转params和query传值方式不显示问题

首先路由跳转有两种方式
1.通过 <router-link></router-link> 实现

2.通过 this.$router.push({})

然后this.$router.push({}又有多种传值方式。其中主要是这两种
1.this.$router.push({ name: 'order', params: { id: id } })
2.this.$router.push({ path: 'order', query: { id: id } })

**注:**肯定有不少小伙伴没有注意到一个细节。params对应的key是name.而query对应的是path。如果用path去取params是没有办法取到值

导致这样的原因是因为params需要通过name来获取,这里就要明白query和params的区别了

query要用path来引入,接收参数都是this. r o u t e . q u e r y . n a m e 。 q u e r y 类 似 于 a j a x 中 g e t 传 参 , 即 在 浏 览 器 地 址 栏 中 显 示 参 数 。 p a r a m s 要 用 n a m e 来 引 入 , 接 收 参 数 都 是 t h i s . route.query.name。query类似于ajax中get传参,即在浏览器地址栏中显示参数。 params要用name来引入,接收参数都是this. route.query.namequeryajaxgetparamsnamethis.route.params.name。params则类似于post,即在浏览器地址栏中不显示参数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值