HarmonyOS 关于customScan开发思路的问题

应用是H5+原生混合开发,两者之间通过dsbridge进行通信,有个场景是,H5想要通过dsbridge调用原生扫码,原生扫码使用的是customScan,但是H5只会掉一次,customScan又是在另一个组件里,如何才能把customScan扫码后的值通过回调的方式传给H5?

HarmonyOS
2025-01-10 09:38:22
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
superinsect

1、H5调原生页面的方法(原生Web组件的页面),此方法实现跳转自定义扫码页面。

router.pushUrl({
  url: "pages/customScanPage"
})

2、自定义扫码页面实现扫码,获取扫码结果后,返回Web组件的页面,这里需要传参。

router.back({
  url: "pages/webPage",
  params: {
    originalValue: result[0].originalValue
  }
})

3、Web组件的页面在onPageShow生命周期获取参数,调H5页面方法传递扫码结果。

onPageShow() {
  if (router.getParams()) {
    let routerParams = router.getParams() as Record<string, string>
    let originalValue: string = routerParams.originalValue;
    this.controller.runJavaScript("getResult(\"" + originalValue + "\")")
  }
}

4、H5页面定义方法。

function getResult(resultStr){
  document.getElementById("demo").innerHTML = resultStr;
}
分享
微博
QQ
微信
回复
2025-01-10 11:09:30
相关问题
HarmonyOS 关于customScan问题
744浏览 • 1回复 待解决
HarmonyOS 关于flutter开发问题
517浏览 • 1回复 待解决
关于鸿蒙OS蓝牙开发问题
5189浏览 • 1回复 待解决
关于 JS UI 开发应用问题
6170浏览 • 1回复 待解决
关于Java UI拖拽式开发问题
6353浏览 • 1回复 待解决
HarmonyOS customScan.init报错1000500001
272浏览 • 1回复 待解决
关于NDK开发
335浏览 • 1回复 待解决
HarmonyOS 关于taskpool问题
596浏览 • 1回复 待解决
HarmonyOS 关于URL问题
739浏览 • 1回复 待解决
HarmonyOS 关于ColorFilter问题
1334浏览 • 1回复 待解决
HarmonyOS Navigation转场动画一些思路
367浏览 • 1回复 待解决
关于Wearable开发几个疑问
7891浏览 • 2回复 待解决
关于鸿蒙应用开发疑问?
5706浏览 • 1回复 待解决
HarmonyOS customScan 如何扫描本地图片
353浏览 • 1回复 待解决
在ArkTs中实现vueslot思路
855浏览 • 1回复 待解决
HarmonyOS 关于video组件问题
464浏览 • 1回复 待解决
HarmonyOS 关于C API问题
745浏览 • 1回复 待解决
HarmonyOS 关于actionsheet样式问题
577浏览 • 1回复 待解决
HarmonyOS 关于Web调试问题
949浏览 • 1回复 待解决
关于HarmonyOS app加固问题
669浏览 • 1回复 待解决