
在微信小程序里,webviewH5向miniProgram通讯只能通过 postMessage 函数
然而这个函数却很鸡肋,小程序官方文档是这样描述的: 向小程序发送消息,会在特定时机(小程序后退、组件销毁、分享)触发组件的message事件
而且小程序官方文档里没有提到miniProgram如何向webviewH5通讯
在这个demo中, 展示了我是如何让webviewH5和miniProgram互相通讯
其实原理很简单:
success
failure
cancel
>
如果你的小程序使用 Webview 来加载网页,那么网页上的数据是不能直接更改小程序本身数据的。在这种情况下,可以通过将小程序和网页数据集成,然后通过后端 API 来读取并更新小程序数据。
小程序可以通过向自己的服务器发送请求获取用户的openid,然后将openid存储在用户的本地缓存中,每次请求时携带openid即可识别用户身份。在使用webview套用小程序的过程中,可以通过一些手段将用户的openid传递到webview中,在webview中获取openid后进行本地存储,然后在需要识别用户身份的时候读取该openid即可。当然,这种方法需要配合小程序后台接口实现,确保传递的openid是正确的并具有唯一性。
首先,对应的H5页面需要集成微信的JS SDK集成文档点击链接: 微信的JS SDK
或者 通过发送的数据判断进行跳转处理
附上微信官方社区的交流说明,可能最接近解决方案,仅供各位参考,
官方社区Issue
后续,如果在小程序开发中, 遇到了其他的问题,会持续记录在此哦~
在微信小程序的客户端中,开发者可以关闭窗口顶部的左上角的WebView按钮,来阻止用户在与小程序交互时点击此按钮。可以在 web-view 组件的 onUnload 属性中添加 preventDefault 方法,来禁止窗口右上角按钮的默认行为。
以上就是关于2021-02-06 让微信小程序和webviewH5实现互相通讯(demo)全部的内容,包括:2021-02-06 让微信小程序和webviewH5实现互相通讯(demo)、鱼ni啊跑了小程序webview网页返回白屏、小程序的webview里的网页更改小程序的数据等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)