|
最近开发遇到了个问题,框架怎样与h5页面通信。通过询问快应用的开发人员,目前有一种hack的方式可以实现,听说后面1020版本已经支持postMessage通信方式。好吧,那就来记录下实现的过程
情形一、快应用web组件向H5发送消息
实现方式: 利用锚点不刷新的特点: http://xxx.xxx.xx#message
说明: 发送一个消息即重新给url赋值: this.url = this.url + '#'+params;h5这边通过popstate监听url变化,获取锚点的值即可
情形二、h5向快应用发送消息
实现方式: 安卓的webview在h5页面title变化时会触发titlereceive事件
说明: h5通过修改title属性传输消息,title变化时在快应用web组件titlereceive事件会被触发从而获取到h5页面的title值
目前整个通信的方式可以通过这样的方式实现,当然最好希望快应用团队的1020的postMessage功能的实现
代码地址: https://pan.baidu.com/s/1mirPiekFVMprBKbCoH39gw
|
|