|
H5网页自身是不可以调用快应用标准的API的,只有快应用是可以使用的,能不能把快应用获取到的信息传给网页呢?快应用框架提供了web双向通信的机制,网页可以向快应用发送xx请求,快应用收到xx请求后,处理请求,将处理后的数据发给网页。
使用快应用侧 快应用侧可以主动给网页发消息,也可以监听网页发来的消息。 | 1 | this.$element('web').postMessage(senddata); |
| 123456789101112 | <web class="web-page" src="{{webUrl}}" trustedurl="{{list}}" onpagestart="onPageStart" useragent="default" onmessage="onMessage" fullscreendirection="{{fullscreenDirection}}" jumppolicy="{{linkJumpPolicy}}" multiwindow="{{openMultiwindow}}" onpagefinish="onPageFinish" ontitlereceive="onTitleReceive" onerror="onError" id="web" allowthirdpartycookies="{{allowThirdPartyCookies}}"> </web> |
响应事件的句柄onMessage代码如下: | 12345678 | onMessage(e) { console.info('onmessage e = ' + e.message + ", url = " + e.url); var msg=e.message; if(msg==='xxx'){ } }, |
H5网页侧| 1 | system.postMessage("xxx"); |
| 1234 | system.onmessage = function(data) { console.info("onmessage data="+data); } |
注意:以上代码添加在html文件中的head标签下的script中。
可以参考这个帖子:https://developer.huawei.com/consumer/cn/forum/topic/0204405003333750226?fid=18
|