实现页面间跳转同事传递search和state参数,但是发现同样的方法调用,只是search参数值不同,结果有时state有值,有时state是undefined.
发现问题
props.history.push({
pathname: "/channel/param/"+appId,
search: `?channelName=${searchData.channelName}`,
state: {...hisData},
});
对于不同的search参数,有些可以在下级页面获取到state参数,有些获取不到。经对比分析发现,当channeName含有中文时,会出选state参数丢失的情况。
解决问题
将中文进行转义
props.history.push({
pathname: "/channel/param/"+appId,
search: `?channelName=${encodeURIComponent(searchData.channelName)}`,
state: {...hisData},
});
原因:
.....还没找到原因