当前位置: 首页 > 工具软件 > Object Query > 使用案例 >

router路由跳转使用query传递参数刷新后数据无法获取,变成[object object]

终育
2023-12-01

在路由跳转传值中,对象和数组在刷新后会变成[object object]

 

跳转路由使用的是history.push,在query中添加了要传给详情页的值,如下:

history.push({
        pathname: '/menu/detail',
        query: {
            comCodeOption: this.state.comCodeOption,
        }

其中comCodeOption格式如下:

[
{
    "comCode": "23",
    "comName": "黑龙江分公司"
},
{
    "comCode": "85",
    "comName": "厦门分公司"
},
{
    "comCode": "36",
    "comName": "江西分公司"
},
{
    "comCode": "82",
    "comName": "青岛分公司"
},
{
    "comCode": "52",
    "comName": "贵州分公司"
},
{
    "comCode": "53",
    "comName": "云南分公司"
}
]

进入详情页后最初comCodeOption值是如上的,刷新页面后comCodeOption变为如下

[
    "[object Object]",
    "[object Object]",
    "[object Object]",
    "[object Object]",
    "[object Object]",
    "[object Object]"
]

如何解决

在query中传递的时候用JSON.stringify()转换一下变为字符串,子页面中接收后用JSON.parse()转回来即可。

 类似资料: