前端代码如何调用原生中的方法并获取到返回值?

前端代码如何调用原生中的方法并获取到返回值?

HarmonyOS
2024-08-06 18:55:27
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
电子土豆片

html:

<!-- index.html -->
<!DOCTYPE html>
<html>
<body>
<button type="button" onclick="callArkTS()">Click Me!</button>
<p id="demo"></p>
<script>
    function callArkTS() {
        let str = testObjName.test();
        document.getElementById("demo").innerHTML = str;
        console.info('=====ArkTS Hello World! :' + str);
    }
</script>
</body>
</html>

artTS:

import web_webview from '@ohos.web.webview';
@Entry
@Component
struct Index {
  webviewController: web_webview.WebviewController = new web_webview.WebviewController()
  // 声明需要注册的对象
  @State testObj: testClass = new testClass();
  build() {
    Column() {
      Web({
        src: $rawfile("index.html"), controller: this.webviewController
      }).javaScriptProxy({
        object: this.testObj,
        name: "testObjName",
        methodList: ["test"],
        controller: this.webviewController
      })
    }
    .width('100%')
    .height('100%')
    .justifyContent(FlexAlign.Center)
  }
}

class testClass {
  constructor() {
  }
  test(): string {
    return 'ArkTS Hello World!';
  }
}
分享
微博
QQ
微信
回复
2024-08-06 20:28:23
相关问题
HarmonyOS TextPickerDialog返回值问题
319浏览 • 1回复 待解决
求助:关于HTTP返回值问题
2802浏览 • 1回复 待解决
错误rowCount返回值-1如何处理?
1244浏览 • 1回复 待解决
event.data.isRequestGesture()返回值问题
843浏览 • 1回复 待解决
HarmonyOS 使用电池状态返回值问题
412浏览 • 1回复 待解决
sim.getOpNameSync获取到为空
215浏览 • 0回复 待解决