HarmonyOS 鸿蒙嵌套H5 Web页面 无法返回正常值

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

HarmonyOS 鸿蒙嵌套H5 Web页面

鸿蒙嵌套H5后交互

1、web端调原生方法,通过cke_2009.png这些方法都能实现(web端调原生方法后有返回值 && 无返回值都是正常的)

2、但原生调web端方法,无参的可以cke_11580.png,有参的怎么拼接都调不通(不确定是原生这边拼接参数错误还是web端接收参数错误);以及原生调完web端方法后接收web端返回的内容也实现不了;

11 回复
大佬,我这个根据上面的教程嵌入以后,使用模拟器预览是白屏,这个是怎么回事

问题原因可能有很多;先看有没有报错,再试试用手机调试;(我也是个菜鸟,申请鸿蒙Next还没成,就搁置了两三个月没弄了)

1、先打包好h5项目

2、cke_228.png

3、cke_2989.png

您好,我现在所在的公司也在研究如何将H5项目嵌入Harmony OS中,请问我是新建一个项目,然后将打包好的H5项目引入rawfile文件夹中,然后利用web组件引入入口html文件就可以实现了吗,还有没有其他需要操作的地方啊

如果只是想将h5嵌入进来的话这样就可以了,但是通信的话我没弄好(h5调鸿蒙原生方法可以,但是鸿蒙调h5没成功,其实方法是调成功了的,只是参数没有接收到),我用的是api9,正在申请NEXT了,NEXT应该可以

还不行的话也没想不到原因了。

你看我这边vue写的,然后发送网络状态 p的值为1或0。h5就能正常接收到,不知道为啥你那边不行。

要说咱俩有啥不一样的,可能就是你是API 9 而我这边是API 11 🤣

cke_130.png

有要学HarmonyOS AI的同学吗,联系我:https://www.itying.com/goods-1206.html

我没看到你的initReport实现在哪里啊 试试 方案一 用function function initReport(results) { console.log(“接收到的参数:”, results); } 方案二 用箭头函数 window.initReport=( results) => { console.log(“接收到的参数:”, results); };

this.controller.runJavaScript(‘returnBack(“ABCD”)’) 如果这里的 “ABCD” 换成一个变量呢?比如说定义一个对象@State results:Object={…这里面是有内容的},然后在returnBack方法里将这个对象JSON.stringify之后作为参数可以不?

可以,json字符串也是字符串。

回到顶部