今天在做微信小程序的时候,产品要求在内嵌的H5页面里面也要有断网提示。
方案一:小程序app.js
onLaunch: function () {
this.networkManage(); //调用监听网络状态的方法
},
networkManage: function () {
var that = this;
//监听网络状态
wx.onNetworkStatusChange(function (res) {
if (!res.isConnected) {
wx.showToast({
title: "网络连接失败,请稍后重试。",
icon: 'none',
duration: 1800,
mask: true
})
}
})
},
优点:只要断网了就会触发提示,不管是小程序原生页面还是webview内嵌h5的页面
缺点:如果是要在h5页面点击时触发断网提示,这个就不能满足了
所以又找了方案二:window.navigator.onLine
$(".aaa").click(function(){
if(!window.navigator.onLine){
//断网情况
}else{
//正常情况
}
}
Tips:这个API在微信开发者工具里面始终走的 true ,但是实际上真机测试(体验版)的时候,ios和小米都是正常的,其他幸好的安卓手机没有测试过。