父组件:
<li v-for="item in list" @click="getList(item.id)" :key="item.id"/>
第一种、跳转时使用push方法拼接携带参数
getList(id) {
// 直接调用$router.push 实现携带参数的跳转
this.$router.push({
path: `/getlist/${id}`,
})
路由配置:
{
path: '/getlist/:id',
name: 'Getlist',
component: Describe
}
子组件获取参数:
this.$route.params.id
第二种:通过路由属性中的name来确定匹配的路由,通过params来传递参数。
this.$router.push({
name: 'Getlist',
params: {
id: id
}
})
路由配置:
{
path: '/getlist',
name: 'Getlist',
component: Getlist
}
子组件获取参数:
this.$route.params.id
第三种:使用path来匹配路由,然后通过query来传递参数
this.$router.push({
path: '/getlist',
query: {
id: id
}
})
路由配置:
{
path: '/getlist',
name: Getlist',
component: Getlist
}
子组件获取参数:
this.$route.query.id
这里要特别注意 在子组件中 获取参数的时候是this.$route,
一般情况下都是用的第二种或第三种。
具体请看原vue router官网之组件传参:vue-router组件传参
本文详细介绍了在Vue项目中如何使用Vue Router进行参数传递的三种方法:通过path直接拼接参数、通过name和params传递参数以及使用query方式传递参数。并提供了具体的代码示例和子组件获取参数的方式。
1905

被折叠的 条评论
为什么被折叠?



