vue $router.push()传参 param跟query的区别

 

其实就是有path则param不生效 或者用query或者直接路径跟上参数  或者name跟paramy一起

另外  query浏览器地址栏会看到参数  param则看不到

刷新的话query不会丢参  param会的

router.push({ name: 'user', params: { userId: '123' }})

router.push({ name: 'user', params: { userId: '123' }})

router.push({ path: 'register', query: { plan: 'private' }}) 

router.push({ path: 'register', query: { plan: 'private' }})

注意:如果提供了 pathparams 会被忽略,上述例子中的 query 并不属于这种情况。取而代之的是下面例子的做法,你需要提供路由的 name 或手写完整的带有参数的 path

const userId = '123'
router.push({ name: 'user', params: { userId }}) // -> /user/123
router.push({ path: `/user/${userId}` }) // -> /user/123
//有了path 则要么用query  要么直接带上完整参数

// 这里的 params 不生效
router.push({ path: '/user', params: { userId }}) // -> /user

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值