第一种,使用query进行传参。
query方式,必须定义path属性,通过query传参,然后在目标页面通过this.$route.query来接受参数。好处:刷新页面数据不会丢失。但是只能穿字符串,如果不是字符串,会转换为字符串,再传。
this.$router.push({
path:'/home',
query:{
id:id
}
})
//路由配置
{
path:'/home',
name:Home,
component:Home
}
第二种,使用params进行传参。
params方式,必须定义name属性,通过params传参,通过this,$route.params来接受参数。好处:可以传递数组或者是对象,大小不会受限制。但是刷新页面数据会丢失。
//通过name来匹配路由,通过param来传递参数
this.$router.push({
name:'Home',
params:{
id:id
}
})
//用params传递参数,不使用:/id
{
path:'/home',
name:Home,
component:Home
}
第三种,使用router-link中的to属性。
//路由的配置
{
path: '/describe',
name: 'Describe',
component: Describe
}
//通过路由中的path属性来确定匹配的路由,通过query来传递参数
<router-link :to="{path:'/describe',query:{id:'id'}}">goHome</router-link>
//接受
this.$route.query.id