<template>
<view>
<text v-if="show">网络异常!!</text>
</view>
</template>
<script>
export default {
data() {
return {
show:false
}
},
onShow() {
/*
getApp().globalData.netWorkStatus
因为其他页面我也用到了,所以定义了一个全局参数,这样不用每个页面都定义参数了
*/
this.isNetworkCanUse(workType => { //获取网络类型
getApp().globalData.netWorkStatus = !workType;
});
uni.onNetworkStatusChange(res => { //监听网络变化
getApp().globalData.netWorkStatus = !res.isConnected;
});
/* 如果页面渲染不出来,建议使用$nextTick 进行后续操作*/
this.$nextTick(() => {
this.show = getApp().globalData.netWorkStatus
});
},
methods: {
/* 可以单独把方法提到全局文件或utils中,全局使用*/
isNetworkCanUse(workType) {
uni.getNetworkType({
success: res => {
if (res.networkType === '2g' || res.networkType === 'none') {
workType(false);
} else {
workType(true);
}
},
fail() {
workType(false);
}
});
},
}
}
</script>
uniapp 判断是否网络异常
于 2024-08-28 14:34:35 首次发布