HarmonyOS router.getParams()数据传递的问题
diamagnetic
发布于 2025-5-23 21:20
浏览
0收藏
为什么我的Params的方法无法传递到另一个界面?
1.传参界面:
.onClick(async () => {
// 查找第一个未开始订单
const currentOrder = item;
router.pushUrl({
url: 'pages/OrderDetailPage',
params: {
scanResult: item.id
}})
console.log('ken', item.id); // 打印原始ID
)}
接受参数的界面:
onPageShow() {
try {
const params = router.getParams() as OrderParams;
console.debug(“路由参数:”, params);
if (typeof params?.scanResult === 'number') {
this.getOrderDetail(params.scanResult);
} else {
throw new Error("参数类型错误");
}
} catch (error) {
console.error("参数解析失败:", error);
router.back(); // 自动返回上一页[8](@ref)
}
}
已于2025-5-23 21:21:42修改
赞
收藏
回复
相关推荐
正确的代码为:
1.传参界面界面
2.接受参数界面
其他原因:
1.可能有相同的传递路由,导致传递的参数为空出现错误。
2.参数传递的类型与你所定义的不同。