- get 类型的传参
用 query 传 Object 类型的参数
// 当前页面
let data = {
id: 1234,
name: 'test'
}
this.$router.push({
path: "/addres",
query: {
data: data
}
})
addres 页面用 this.$route.query.data
接收参数
当参数为对象时,路由后面则是转为编码后的对象。
addres 页面正常接收 data 参数
但是刷新页面之后,参数变为 “[object Object]”
为了避免这个问题,可以在传参时用 JSON.stringify(data)
把参数转为 json 格式,在 addres 页面接收到参数后再用 JSON.parse(data)
转回 Object
- post 类型的传参
用 params 传 Object 类型的参数
// 当前页面
let data = {
id: 1234,
name: 'test'
}
this.$router.push({
name: "addres",
params: {
data
}
})
addres 页面用 this.$route.params.data
接收.
post 类型的传参,刷新页面参数消失。
更多 vue 路由传参的知识请查看: vue路由传参的两种方式.