HarmonyOS 鸿蒙Next webview 与h5交互,调用runJavaScript传的是string,h5接收到的是个object,不是string

发布于 1周前 作者 wuwangju 最后一次编辑是 5天前 来自 鸿蒙OS

HarmonyOS 鸿蒙Next:webview 与h5交互,调用runJavaScript传的是string,h5接收到的是个object,不是string

webview 与h5交互,调用runJavaScript传的是string,h5接收到的是个object,不是string

cke_217.png

用 JSON.stringify(data) 转完,h5接收到的也是object

cke_5094.png

5 回复

试试

this.controller.runJavaScript(`getUserInfo("${str}")`);

感谢。可以了 ""不行,需要换成’’ this.controller.runJavaScript(getUserInfo('${str}'));

针对HarmonyOS鸿蒙Next中webview与H5交互时,调用runJavaScript传递的是string但H5接收到的是object的问题,这通常是由于数据在传输过程中的格式转换或解析错误导致的。

在HarmonyOS中,webview与H5之间的交互依赖于JavaScript引擎,而JavaScript在处理数据类型时可能会进行自动转换。为了确保数据类型在传输过程中的一致性,可以采取以下措施:

  1. 在调用runJavaScript时,确保传递的字符串格式正确,可以使用JSON.stringify()对字符串进行序列化,以避免在传输过程中被错误地解析为对象。
  2. 检查H5端接收数据时的解析逻辑,确保能够正确解析传递过来的字符串。
  3. 如果问题依旧存在,可以检查HarmonyOS的官方文档或开发者社区,看是否有其他开发者遇到并解决了类似的问题。

如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部