官方介绍:developers.weixin.qq.com/miniprogram…javascript
最近跟小程序对接,遇到一些通讯问题,现总结以下:html
根据官方文档介绍,若是h5页面想要获取小程序内的信息,好比地理位置等信息。须要经过在webview里给h5连接添加参数实现。java
h5页面在连接上截取小程序添加的参数,得到值。可是也要注意url的长度,不能无节制的在h5连接上添加参数。web
/**
* 获取URL参数
*/
function getQueryString() {
const search = window.location.search.substring(1);
const param = {};
const arr = search.split('&');
for (let i = 0; i < arr.length; i++) {
const item = arr[i].split('=');
param[item[0]] = decodeURIComponent(item[1]);
}
return param;
}
复制代码
查了下,小程序内在webview上监听bindmessage事件,h5页面触发postMessage方法来传递参数。页面脚本以下:小程序
<script type="text/javascript" src="https://res.wx.qq.com/open/js/jweixin-1.3.2.js"></script>
wx.miniProgram.postMessage({
data
});
复制代码
网页向小程序 postMessage 时,会在特定时机(小程序后退、组件销毁、分享)触发并收到消息。e.detail = { data },data是屡次 postMessage 的参数组成的数组。数组