【发布时间】:2021-08-07 00:20:07
【问题描述】:
问题
router.push({name:"Order", params: {obj: {}})
无法推送obj: {},而是路由收到obj: '[object Object]'
情况
我有这样的路线设置
{
path: '/Order',
name: 'Order',
component: () => import("../views/Order.vue"),
props: route => {
return route.params.obj // '[object Object]'
},
}
这会导致 props 没有在 Order.vue 中定义
预期结果
{
...
props: route => {
return route.params.obj // '{}'
},
}
基于this answer 对象在旧版本中工作
我测试过的内容
我用 jest 检查了传递给 router.push 的参数,它们看起来应该是这样的:{name:"Order", params: {obj: {}}
有什么想法吗?
【问题讨论】:
-
路由参数是 URL 中的字符串(即
/route/:param)。您如何期望这会将{}序列化为字符串? -
我也有同样的想法,但this 似乎表明您可以将对象作为参数传递
-
2 年前有人问过这个版本要旧得多
-
因为它是可能的,我想知道它是否仍然存在。感谢github问题
标签: vue.js vue-router vuejs3 vue-router4