浏览代码

检测是否为最新的app*.js版本

Michael Wang 6 年之前
父节点
当前提交
77e51494c2
共有 1 个文件被更改,包括 21 次插入19 次删除
  1. 21 19
      src/features/Login/Login.vue

+ 21 - 19
src/features/Login/Login.vue

@@ -138,25 +138,8 @@ export default {
       disableLoginBtn: true
     };
   },
-  mounted() {
-    (async () => {
-      let myHeaders = new Headers();
-      myHeaders.append("Content-Type", "application/javascript");
-      const response = await fetch(
-        document.scripts[document.scripts.length - 1].src,
-        {
-          headers: myHeaders
-        }
-      );
-      if (!response.ok) {
-        window._hmt.push([
-          "_trackEvent",
-          "登录页面",
-          "新版本发布后,客户端自动刷新"
-        ]);
-        location.reload(true);
-      }
-    })();
+  async mounted() {
+    await this.checkNewVersion();
   },
   async created() {
     if (this.LOGIN_ID_DOMAINS.includes(this.schoolDomain)) {
@@ -264,6 +247,7 @@ export default {
       if (this.disableLoginBtn) {
         return;
       }
+      await this.checkNewVersion();
       this.disableLoginBtn = true;
       setTimeout(() => (this.disableLoginBtn = false), 5000);
       const valid = await this.$refs[name].validate();
@@ -367,6 +351,24 @@ export default {
         return;
       }
     },
+    async checkNewVersion() {
+      let myHeaders = new Headers();
+      myHeaders.append("Content-Type", "application/javascript");
+      const response = await fetch(
+        document.scripts[document.scripts.length - 1].src,
+        {
+          headers: myHeaders
+        }
+      );
+      if (!response.ok) {
+        window._hmt.push([
+          "_trackEvent",
+          "登录页面",
+          "新版本发布后,客户端自动刷新"
+        ]);
+        location.reload(true);
+      }
+    },
     closeApp() {
       window.close();
     }