uniapp 判断是否网络异常

<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>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值