我的web页面有以下方法:
// index.html
function notify() {
const pData = {
"data":new Date().getTime()
}
const dataStr = JSON.stringify(pData);
wx.miniProgram.postMessage({
data: pData,
})
console.log('通知');
}
在小程序的web-view中配置如下:
<!-- info.wxml -->
<web-view src="{{localUrl}}" bindmessage="messageHandler"></web-view>
<!-- info.js -->
messageHandler(e) {
console.log('接收页面参数:', e)
},
我在调试时,调用web页面的 notify 方法没有触发web-view控件绑定的方法 messageHandler;
可能的原因在官方文档找到了解析:
”向小程序发送消息,会在以下特定时机触发组件的message事件:小程序后退、组件销毁、分享、复制链接(2.31.1))“
但是我发现编译器的日志,会及时响应我的点击事件,并输出我的传递参数:
请问有没有一些其他的方法可以实现小程序及时获取web-view发起的通讯数据的?
可不可以从 invokeAppService postMessage 这些信息进行拦截获取数据?
用websocket
用websocket也不行吗
没有实时办法
没有其他方法