ソースを参照

fix:pad的bug修改

chenzhen2 1 年間 前
コミット
853710c403
5 ファイル変更106 行追加16 行削除
  1. 11 1
      src/router/index.ts
  2. 3 0
      src/utils/https.ts
  3. 20 0
      src/views/envmonitor/index.vue
  4. 52 0
      src/views/error/index.vue
  5. 20 15
      src/views/home/index.vue

+ 11 - 1
src/router/index.ts

@@ -213,7 +213,17 @@ export const constantRoutes: Array<RouteRecordRaw> = [
       color: '#F5F5F5',
       hideHeader: false
     }
-  }
+  },
+  {
+    path: '/error',
+    component: () => import('@/views/error/index.vue'),
+    name: 'error',
+    meta: {
+      title: '错误页面',
+      color: '#F5F5F5',
+      hideHeader:true
+    }
+  },
 ]
 
 export const asyncRoutes: Array<RouteRecordRaw> = [

+ 3 - 0
src/utils/https.ts

@@ -76,6 +76,9 @@ export const getUrlParams = (key: any = 'accessToken') => {
     }
   }
   let token: string = theRequest[key] || ''
+  if (token == 'null') {
+    token = ''
+  }
   return token
 }
 

+ 20 - 0
src/views/envmonitor/index.vue

@@ -391,6 +391,7 @@ import {
 import { store } from "@/store";
 import { SpaceInfoModel } from "@/model/userModel";
 import { getWorkType } from "@/utils/mapIcon";
+import { getCookieMac } from "@/utils/cookies";
 
 export default defineComponent({
   components: {
@@ -417,6 +418,15 @@ export default defineComponent({
     VanPopup: Popup,
     VanIcon: Icon,
   },
+  beforeRouteEnter(to, from, next) {
+    let mac: any = getCookieMac();
+    if (mac && mac !== "null") {
+      next();
+    } else {
+      next("/error");
+    }
+    // next()
+  },
   setup() {
     const proxyGlobal: any = getCurrentInstance();
     const router: any = useRouter();
@@ -547,6 +557,7 @@ export default defineComponent({
     let userSpaceInfo: any = [];
     let spaceModelTimer: any = null;
     let spaceTempTimer: any = null;
+    let dateInter: any = null;
     let envlist: any = [
       {
         id: 2,
@@ -1948,9 +1959,17 @@ export default defineComponent({
             proxyData.queryCustomerserviceTimer();
           });
       },
+      dateInter: dateInter,
+      setDateTime() {
+        proxyData.dateInter = setInterval(() => {
+          proxyData.nowDate = formatDate("YYYY.MM.DD HH:mm");
+          proxyData.nowWeek = getNowWeek();
+        }, 60000);
+      },
     });
     onBeforeUnmount(() => {
       proxyData.clearAll();
+      clearInterval(proxyData.dateInter);
       clearTimeout(proxyData.cusServiceTimer);
       clearTimeout(proxyData.weatherTimer);
     });
@@ -1962,6 +1981,7 @@ export default defineComponent({
       proxyData.defaultSpace = {
         spaceId: spaceId,
       };
+      proxyData.setDateTime()
       proxyData.init();
       // 获取当前平板绑定的空间
       proxyData.queryWorkSpace();

+ 52 - 0
src/views/error/index.vue

@@ -0,0 +1,52 @@
+<template>
+  <div class="error">
+    <div>无法获取到mac地址</div>
+    <p>
+      <span> 1.请检查WIFI功能是否打开了 </span>
+      <span> 2.打开WIFI功能,重启应用 </span>
+    </p>
+  </div>
+</template>
+  
+  <script lang="ts">
+import { defineComponent, nextTick, onMounted, reactive, toRefs } from "vue";
+import Header from "@/components/header/Comheader.vue";
+import { useRoute, onBeforeRouteUpdate } from "vue-router";
+import axios from "axios";
+
+export default defineComponent({
+  components: {},
+  setup() {
+    const route: any = useRoute();
+    const proxyData = reactive({});
+    onMounted(() => {});
+    return {
+      ...toRefs(proxyData),
+    };
+  },
+});
+</script>
+<style lang="scss" scoped>
+.error {
+  padding-top: 100px;
+//   text-align: center;
+  div {
+    padding: 30px;
+    font-size: 34px;
+    padding-left: 32%;
+    color: red;
+  }
+  p {
+    padding-left: 30%;
+    text-align: left;
+    span {
+      display: block;
+      padding: 20px;
+      font-size: 24px;
+    }
+  }
+}
+</style>
+  
+
+  

+ 20 - 15
src/views/home/index.vue

@@ -106,23 +106,28 @@ export default defineComponent({
     console.log("路由导航首位---");
     console.log(to);
     console.log(from);
-    // next()
-    if (to.query.type !== "logoOut") {
-      next((e: any) => {
-        console.log(e);
-        e.queryWorkSpace();
-      });
+    let mac: any = getCookieMac();
+    if (mac && mac !== "null") {
+      if (to.query.type !== "logoOut") {
+        next((e: any) => {
+          console.log(e);
+          e.queryWorkSpace();
+        });
+      } else {
+        next((e: any) => {
+          e.showLogin = true;
+          let mac: any = getCookieMac();
+          console.log(mac);
+          // to.query = { mac: mac};
+          console.log(to);
+          // console.log( e.showLogin )
+          // router.push({ name: "home", query: { mac: mac } });
+        });
+      }
     } else {
-      next((e: any) => {
-        e.showLogin = true;
-        let mac: any = getCookieMac();
-        console.log(mac);
-        // to.query = { mac: mac};
-        console.log(to);
-        // console.log( e.showLogin )
-        // router.push({ name: "home", query: { mac: mac } });
-      });
+      next("/error");
     }
+    // next()
   },
   setup(props) {
     let router: any = useRouter();