1***@qq.com
1***@qq.com
  • 发布:2024-10-19 16:00
  • 更新:2024-10-20 22:47
  • 阅读:172

【提问】web-view和uni-app如何通信

分类:uni-app

如题

2024-10-19 16:00 负责人:无 分享
已邀请:
DCloud_UNI_OttoJi

DCloud_UNI_OttoJi - 日常回复 uni-app/x 问题,如果艾特我没看到,请主动私信

没有具体的提问吗,如果只是基础使用翻一翻文档,参考文档 web-view

  • 1***@qq.com (作者)

    我们是想在uni-app的 onShow周期中,向web-view内部发送一个事件,并在内部进行监听。在web-view和uni-app分别是如何监听的。我们是用uni-app打包了一个安卓应用,然后套个web-view,来进行使用。

    2024-10-19 16:58

BoredApe

BoredApe - 有问题就会有答案。

webviewuni-app的双向通信可以使用以下方式:

webview/h5 发送消息:

plus.webview.postMessageToUniNView({    
 type: 'toUniAPP',    
 args: {    
     arg1: '123'    
 }    
}, '__uniapp__service');

uni-app 接受消息:

plus.globalEvent.addEventListener('plusMessage', (message)=>{    
// message打印的结果:    
// {    
//     "data": {    
//         "type": "toUniAPP",    
//         "args": {    
//             "arg1": "123"    
//         }    
//     },    
//     "targetId": "__uniapp__service",    
//     "originId": "NWindow101677899611098"    
// }    
})

可以使用这种方式模拟一个JSBridge,请参考我在这个帖子中的回答:https://ask.dcloud.net.cn/question/163661

  • 1***@qq.com (作者)

    感谢回答,我主要还是想在uni-app的onShow和onHide时间点,调用web-view的内部方法,这样应该如何实现

    2024-10-21 09:44

  • 1***@qq.com (作者)

    您参考帖子里面的,uni.还有evalJS,这些是uni-app自带的吗,还有要另外下载的

    2024-10-21 09:46

  • BoredApe

    回复 1***@qq.com: evaljs 请参考文档:https://www.html5plus.org/doc/zh_cn/webview.html

    2024-10-21 13:09

  • 1***@qq.com (作者)

    回复 BoredApe: 感谢,问题已解决

    2024-10-21 15:45

  • 5***@qq.com

    postMessageToUniNView 这个值支持nvue么? 还有app怎么项h5发送消息?

    2025-01-20 02:55

要回复问题请先登录注册