HarmonyOS web原生和H5如何交互?

HarmonyOS  web原生和H5如何交互?


HarmonyOS
2024-09-06 09:50:01
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
FengTianYa

ArkTS调用 h5 方法

1. h5 注册 js 函数

dsBridge.registerAsyn('showAlertAsync', function (a, b, c, callback) { 
  let counter = 0 
  let id = setInterval(() => { 
    if (counter < 5) { 
      callback(counter, false) 
      alert("原生调用JS showAlertAsync函数" + a + " " + b + " " + c + " " + counter) 
      counter++ 
    } else { 
      callback(counter, true) 
      alert("原生调用JS showAlertAsync函数" + a + " " + b + " " + c + " " + counter) 
      clearInterval(id) 
    } 
  }, 1000) 
 
})

2.ArkTS侧调用

Button("调用js函数-异步") 
  .margin({ top: 10 }) 
  .onClick(() => { 
    this.controller.callJs("showAlertAsync", [1, 2, '666'], (v: string) => { 
      this.message = v + "" 
    }) 
  })

h5 调用 ArkTS

1. h5 js 适配方式

function testClick() { 
  dsBridge.call('testClick', "hello", (responseData) => { 
    document.getElementById("show").innerHTML = "repsonseData from java, data = " + responseData 
  }) 
}

2.ArkTS实现对应 testClick 方法

@JavaScriptInterface() 
testClick(p: string, handler: CompleteHandler) { 
  // p 为 h5 js 侧传递参数 
  this.cHandler = handler 
  this.cHandler.complete("it is ArkTS default response"); 
}
分享
微博
QQ
微信
回复
2024-09-06 15:38:53
相关问题
Web中webviewH5交互
990浏览 • 1回复 待解决
Web组件h5页面如何交互
126浏览 • 1回复 待解决
HarmonyOS webH5交互
507浏览 • 1回复 待解决
HarmonyOS H5应用侧数据交互
182浏览 • 1回复 待解决
HarmonyOS webH5两端数据交互
630浏览 • 1回复 待解决
H5页面如何与ArkTS交互
2918浏览 • 1回复 待解决
HarmonyOS web组件加载h5h5拉起摄像头
463浏览 • 1回复 待解决
HarmonyOS h5ArkTS通信
110浏览 • 1回复 待解决
H5原生调JSbrige的demo示例
110浏览 • 1回复 待解决
HarmonyOS H5与应用侧数据交互的Demo
434浏览 • 1回复 待解决
HarmonyOS web通过loadData加载h5标签
107浏览 • 1回复 待解决
HarmonyOS Web组件加载在线H5页面
120浏览 • 1回复 待解决
HarmonyOS H5如何访问相册?
116浏览 • 1回复 待解决