vue路由传参thi.$router.push
时间: 2023-10-13 18:00:22 浏览: 108
在Vue中,可以使用`this.$router.push`方法进行路由传参。根据你提供的引用内容,有三种不同的方式来传递参数。
第一种是使用`query`参数。你可以在`this.$router.push`方法的参数中使用`query`属性来传递参数,例如:
```javascript
this.$router.push({ path: '/mtindex/detail', query: { shopid: item.id } });
```
在目标页面中,你可以通过`this.$route.query.shopid`来获取传递的参数。
第二种是使用`params`参数。类似地,你可以在`this.$router.push`方法的参数中使用`params`属性来传递参数,例如:
```javascript
this.$router.push({ name: 'detail', params: { shopid: item.id } });
```
在目标页面中,你可以通过`this.$route.params.shopid`来获取传递的参数。
第三种是使用动态路由。在路由配置中,你可以使用`path`和`name`来配置动态路由,然后在`this.$router.push`方法中使用相应的路径或名称来传递参数。例如:
```javascript
// 路由配置
{
path: '/d/:id',
component: MyComponent
}
// 传递参数
this.$router.push({ path: `/d/${id}` });
```
在目标页面中,你可以通过`this.$route.params.id`来获取传递的参数。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [vue-this.$route.query和this.$route.params的使用例子](https://blog.csdn.net/weixin_43735255/article/details/98875659)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
- *2* *3* [vue路由传参](https://blog.csdn.net/m0_65642423/article/details/126670027)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 50%"]
[ .reference_list ]
阅读全文