在router中添加错误页面的路由

{
 
      path: '/networkError',
 
      component: require('@/public-component/no-network.vue').default, 
 
      name: 'networkError',
 
      meta: { title: '网络异常' } 
}

这里面需要注意,不能使用路由懒加载

在APP.vue中添加监听网络
在app.vue中定义一个变量,来记录是否显示断网

data() {
    return {
        network: true //默认有网
    };
},
// mounted中检测是否断网
mounted() {
    // 检测断网
    window.addEventListener("offline", () => {
        console.log("已断网");
        this.network= false;
    });
    window.addEventListener("online", () => {
        console.log("网络已连接");
        this.network= true;
    });
}

在断网时会记录下当前页面的地址,开网络时会重新跳转到当前页面;

<!-- 断网显示图片替换内容 -->
<template>
  <div id="app">
    <!-- 断网显示的图片,使用转换工具转换成base64格式,才可以显示 -->
    <img
      class="nonet"
      v-if="!network"
      src="data:image/png;base64*******"
    />
    <router-view v-else />
  </div>
</template>

Logo

前往低代码交流专区

更多推荐