jindong
jindong
  • 发布:2024-05-16 11:53
  • 更新:2024-08-16 01:04
  • 阅读:486

【报Bug】关于uniapp webview使用postMessage的问题,webview中postMessage没有触发@message

分类:uni-app

产品分类: uniapp/小程序/微信

PC开发环境操作系统: Windows

PC开发环境操作系统版本号: win11

第三方开发者工具版本号: webstorm

基础库版本号: 3.3.4

项目创建方式: CLI

CLI版本号: @vue/cli@5.0.8

示例代码:

webview页面:
document.addEventListener('UniAppJSBridgeReady', () => {
uni.postMessage({
data: {
action: 'message'
}
});
uni.getEnv(function (res) {
// alert(JSON.stringify(res))
});
});

uniapp: <web-view src="getIframeUrl" @message="handleMessage"
></web-view>
const handleMessage = (ev) => {
console.log('handleMessage>>>', ev)
}

操作步骤:

uniapp vue3的项目中使用webview给uniapp应用发送postMessage消息

预期结果:

能够调用@message事件绑定的方法,并输出'handleMessage>>>' event对象

实际结果:

并没有调用@message事件绑定的方法

bug描述:

uniapp开发微信小程序,uniapp应用中使用了webview组件,我想通过postMessage实现iframe中的页面向uniapp应用发送通知,目前已经完全按照文档中的方法进行了编写,目前遇到的问题是,webview中网页通过uni发送postMessage正常,因为控制台中可以打印:invokeAppService postMessage {action: "message"} 29(这个信息不是我打印的),但是却不走@message事件绑定的方法,但是复制链接的之后会走@message事件绑定的方法。

所以,简言之,webview使用postMessage,发送代码也没问题,@message绑定方法也没问题,但是postMessage却没有走@message方法

2024-05-16 11:53 负责人:无 分享
已邀请:
1***@qq.com

1***@qq.com - 洒水

解决了吗,也遇到这个问题了

白加黑chris

白加黑chris - hi

@message不是只在webview的父页面后退、组件销毁、分享这种特定时机才触发吗

要回复问题请先登录注册