gcj 3 سال پیش
والد
کامیت
a38e20e4f7

+ 79 - 81
package-lock.json

@@ -1786,6 +1786,16 @@
           "integrity": "sha1-/q7SVZc9LndVW4PbwIhRpsY1IPo=",
           "dev": true
         },
+        "ansi-styles": {
+          "version": "4.3.0",
+          "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+          "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "color-convert": "^2.0.1"
+          }
+        },
         "cacache": {
           "version": "13.0.1",
           "resolved": "https://registry.npm.taobao.org/cacache/download/cacache-13.0.1.tgz",
@@ -1812,6 +1822,53 @@
             "unique-filename": "^1.1.1"
           }
         },
+        "chalk": {
+          "version": "4.1.2",
+          "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+          "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "ansi-styles": "^4.1.0",
+            "supports-color": "^7.1.0"
+          }
+        },
+        "color-convert": {
+          "version": "2.0.1",
+          "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+          "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "color-name": "~1.1.4"
+          }
+        },
+        "color-name": {
+          "version": "1.1.4",
+          "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+          "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+          "dev": true,
+          "optional": true
+        },
+        "has-flag": {
+          "version": "4.0.0",
+          "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+          "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+          "dev": true,
+          "optional": true
+        },
+        "loader-utils": {
+          "version": "2.0.2",
+          "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.2.tgz",
+          "integrity": "sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "big.js": "^5.2.2",
+            "emojis-list": "^3.0.0",
+            "json5": "^2.1.2"
+          }
+        },
         "source-map": {
           "version": "0.6.1",
           "resolved": "https://registry.npm.taobao.org/source-map/download/source-map-0.6.1.tgz?cache=0&sync_timestamp=1598275560784&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsource-map%2Fdownload%2Fsource-map-0.6.1.tgz",
@@ -1828,6 +1885,16 @@
             "minipass": "^3.1.1"
           }
         },
+        "supports-color": {
+          "version": "7.2.0",
+          "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+          "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "has-flag": "^4.0.0"
+          }
+        },
         "terser-webpack-plugin": {
           "version": "2.3.8",
           "resolved": "https://registry.npm.taobao.org/terser-webpack-plugin/download/terser-webpack-plugin-2.3.8.tgz",
@@ -1844,6 +1911,18 @@
             "terser": "^4.6.12",
             "webpack-sources": "^1.4.3"
           }
+        },
+        "vue-loader-v16": {
+          "version": "npm:vue-loader@16.8.3",
+          "resolved": "https://registry.npmjs.org/vue-loader/-/vue-loader-16.8.3.tgz",
+          "integrity": "sha512-7vKN45IxsKxe5GcVCbc2qFU5aWzyiLrYJyUuMz4BQLKctCj/fmCa0w6fGiiQ2cLFetNcek1ppGJQDCup0c1hpA==",
+          "dev": true,
+          "optional": true,
+          "requires": {
+            "chalk": "^4.1.0",
+            "hash-sum": "^2.0.0",
+            "loader-utils": "^2.0.0"
+          }
         }
       }
     },
@@ -12079,87 +12158,6 @@
         }
       }
     },
-    "vue-loader-v16": {
-      "version": "npm:vue-loader@16.5.0",
-      "resolved": "https://registry.nlark.com/vue-loader/download/vue-loader-16.5.0.tgz?cache=0&sync_timestamp=1628666767864&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fvue-loader%2Fdownload%2Fvue-loader-16.5.0.tgz",
-      "integrity": "sha1-CcTgcSRmiZ40uZpoZSTxkWX7KJI=",
-      "dev": true,
-      "optional": true,
-      "requires": {
-        "chalk": "^4.1.0",
-        "hash-sum": "^2.0.0",
-        "loader-utils": "^2.0.0"
-      },
-      "dependencies": {
-        "ansi-styles": {
-          "version": "4.3.0",
-          "resolved": "https://registry.nlark.com/ansi-styles/download/ansi-styles-4.3.0.tgz",
-          "integrity": "sha1-7dgDYornHATIWuegkG7a00tkiTc=",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "color-convert": "^2.0.1"
-          }
-        },
-        "chalk": {
-          "version": "4.1.2",
-          "resolved": "https://registry.nlark.com/chalk/download/chalk-4.1.2.tgz?cache=0&sync_timestamp=1627646655305&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fchalk%2Fdownload%2Fchalk-4.1.2.tgz",
-          "integrity": "sha1-qsTit3NKdAhnrrFr8CqtVWoeegE=",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "ansi-styles": "^4.1.0",
-            "supports-color": "^7.1.0"
-          }
-        },
-        "color-convert": {
-          "version": "2.0.1",
-          "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz",
-          "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "color-name": "~1.1.4"
-          }
-        },
-        "color-name": {
-          "version": "1.1.4",
-          "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz",
-          "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=",
-          "dev": true,
-          "optional": true
-        },
-        "has-flag": {
-          "version": "4.0.0",
-          "resolved": "https://registry.nlark.com/has-flag/download/has-flag-4.0.0.tgz",
-          "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=",
-          "dev": true,
-          "optional": true
-        },
-        "loader-utils": {
-          "version": "2.0.0",
-          "resolved": "https://registry.npm.taobao.org/loader-utils/download/loader-utils-2.0.0.tgz",
-          "integrity": "sha1-5MrOW4FtQloWa18JfhDNErNgZLA=",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "big.js": "^5.2.2",
-            "emojis-list": "^3.0.0",
-            "json5": "^2.1.2"
-          }
-        },
-        "supports-color": {
-          "version": "7.2.0",
-          "resolved": "https://registry.nlark.com/supports-color/download/supports-color-7.2.0.tgz?cache=0&sync_timestamp=1626703414084&other_urls=https%3A%2F%2Fregistry.nlark.com%2Fsupports-color%2Fdownload%2Fsupports-color-7.2.0.tgz",
-          "integrity": "sha1-G33NyzK4E4gBs+R4umpRyqiWSNo=",
-          "dev": true,
-          "optional": true,
-          "requires": {
-            "has-flag": "^4.0.0"
-          }
-        }
-      }
-    },
     "vue-pdf": {
       "version": "4.2.0",
       "resolved": "https://registry.npm.taobao.org/vue-pdf/download/vue-pdf-4.2.0.tgz",

+ 4 - 4
src/components/learnCenter/Course.vue

@@ -6,10 +6,10 @@
         <span>
           <img src="../../assets/learncenter/listTitleImg1.png" alt="" />
         </span>
-        <b>课程</b>
+        <b> <!-- 课程 -->{{ $t("Key215") }} </b>
       </div>
       <div class="more" @click="gotolist">
-        <span> 查看更多 </span>
+        <span> <!-- 查看更多  -->{{ $t("Key147") }} </span>
         <img src="../../assets/learncenter/moreImage.png" alt="" />
       </div>
     </div>
@@ -95,8 +95,8 @@ export default {
           height: 15px;
         }
       }
-      b{
-          margin: 0 16px;
+      b {
+        margin: 0 16px;
       }
     }
     .title2 {

+ 6 - 6
src/components/learnCenter/Textbook.vue

@@ -6,10 +6,10 @@
         <span>
           <img src="../../assets/learncenter/listTitleImg2.png" alt="" />
         </span>
-        <b>{{$t("Key44")}}</b>
+        <b>{{ $t("Key44") }}</b>
       </div>
       <div class="more" @click="gotolist">
-        <span> 查看更多 </span>
+        <span><!-- 查看更多  -->{{ $t("Key147") }}</span>
         <img src="../../assets/learncenter/moreImage.png" alt="" />
       </div>
     </div>
@@ -64,9 +64,9 @@ export default {
       window.open(href, "_blank");
     },
   },
-  created(){
+  created() {
     updateWordPack({
-        word_key_list: ["Key44","Key46"],
+      word_key_list: ["Key44", "Key46"],
     });
   },
 };
@@ -101,8 +101,8 @@ export default {
           height: 15px;
         }
       }
-      b{
-          margin: 0 16px;
+      b {
+        margin: 0 16px;
       }
     }
     .title2 {

+ 42 - 41
src/permission.js

@@ -3,60 +3,61 @@ import store from './store'
 import { Message } from 'element-ui'
 import NProgress from 'nprogress' // progress bar
 import 'nprogress/nprogress.css' // progress bar style
-import { getToken, getConfig } from '@/utils/auth' // get token from cookie
+import { getToken, removeToken, getConfig } from '@/utils/auth' // get token from cookie
 import getPageTitle from '@/utils/get-page-title'
 
 NProgress.configure({ showSpinner: false }) // NProgress Configuration
 
 const whiteList = ['/login'] // no redirect whitelist
 
-router.beforeEach(async(to, from, next) => {
-    // start progress bar
-    NProgress.start()
-        // set page title
-    document.title = getPageTitle(to.meta.title)
-        //next();
-    NProgress.done()
-    const hasToken = getToken()
+router.beforeEach(async (to, from, next) => {
+  // start progress bar
+  NProgress.start()
+  // set page title
+  document.title = getPageTitle(to.meta.title)
+  //next();
+  NProgress.done()
+  const hasToken = getToken()
 
-    if (hasToken) {
-        //=======重点部分以下=======
+  if (hasToken) {
+    //=======重点部分以下=======
 
-        let config = getConfig();
-        if (config) {
-            if (to.path === '/login') {
-                // if is logged in, redirect to the home page
-                next({ path: '/EnterSys' })
-                NProgress.done()
-            } else {
-                try {
-                    next()
-                } catch (error) {
-                    Message.error(error || 'Has Error')
-                    next(`/login?redirect=${to.path}`)
-                    NProgress.done()
-                }
-            }
-        } else {
-            next(`/login?redirect=${to.path}`)
-            NProgress.done()
+    let config = getConfig();
+    if (config) {
+      if (to.path === '/login') {
+        // if is logged in, redirect to the home page
+        next({ path: '/EnterSys' })
+        NProgress.done()
+      } else {
+        try {
+          next()
+        } catch (error) {
+          Message.error(error || 'Has Error')
+          next(`/login?redirect=${to.path}`)
+          NProgress.done()
         }
-        //=======重点部分以上=======
+      }
+    } else {
+      removeToken();
+      next(`/login?redirect=${to.path}`)
+      NProgress.done()
+    }
+    //=======重点部分以上=======
 
+  } else {
+    /* has no token*/
+    if (whiteList.indexOf(to.path) !== -1) {
+      // in the free login whitelist, go directly
+      next()
     } else {
-        /* has no token*/
-        if (whiteList.indexOf(to.path) !== -1) {
-            // in the free login whitelist, go directly
-            next()
-        } else {
-            // other pages that do not have permission to access are redirected to the login page.
-            next(`/login?redirect=${to.path}`)
-            NProgress.done()
-        }
+      // other pages that do not have permission to access are redirected to the login page.
+      next(`/login?redirect=${to.path}`)
+      NProgress.done()
     }
+  }
 })
 
 router.afterEach(() => {
-    // finish progress bar
-    NProgress.done()
+  // finish progress bar
+  NProgress.done()
 })

+ 35 - 30
src/utils/i18n.js

@@ -12,35 +12,35 @@ import ruLocal from 'element-ui/lib/locale/lang/ru-RU';
 
 Vue.use(VueI18n);
 const i18n = new VueI18n({
-    locale: localStorage.getItem('language_type') || "ZH", //store.getters.language_type,
-    messages: {
-        ZH: {
-            ...zhLocal
-        },
-        AR: {
-            ...arLocal
-        },
-        EN: {
-            ...enLocal
-        },
-        JA: {
-            ...jaLocal
-        },
-        DE: {
-            ...deLocal
-        },
-        RU: {
-            ...ruLocal
-        }
+  locale: localStorage.getItem('language_type') || "ZH", //store.getters.language_type,
+  messages: {
+    ZH: {
+      ...zhLocal
     },
-    silentTranslationWarn: true
+    AR: {
+      ...arLocal
+    },
+    EN: {
+      ...enLocal
+    },
+    JA: {
+      ...jaLocal
+    },
+    DE: {
+      ...deLocal
+    },
+    RU: {
+      ...ruLocal
+    }
+  },
+  silentTranslationWarn: true
 });
 
 ElementLocale.i18n((key, value) => i18n.t(key, value));
 
 export async function setI18nLang(language_type) {
-    console.log(language_type);
-    await store.dispatch('lang/updateLanguageType', language_type);
+  console.log(language_type);
+  await store.dispatch('lang/updateLanguageType', language_type);
 }
 
 /**
@@ -48,18 +48,23 @@ export async function setI18nLang(language_type) {
  * @param {Object} Parameter word_key_list 需要读取的词汇
  */
 export function updateWordPack(Parameter) {
+  return new Promise((resolve, reject) => {
     Parameter.language_type = store.getters.language_type;
     let MethodName = 'language_manager-GetWordPack';
     getStaticContent(MethodName, Parameter).then(data => {
-        let localWord = i18n.messages[data.language_type];
-        if (localWord === undefined) {
-            localWord = {};
-        }
-        let wordPack = Object.assign(localWord, data.word_pack);
+      let localWord = i18n.messages[data.language_type];
+      if (localWord === undefined) {
+        localWord = {};
+      }
+      let wordPack = Object.assign(localWord, data.word_pack);
 
-        i18n.setLocaleMessage(data.language_type, wordPack);
-        // localStorage.setItem('i18n-message', JSON.stringify(i18n.messages));
+      i18n.setLocaleMessage(data.language_type, wordPack);
+      resolve()
+      // localStorage.setItem('i18n-message', JSON.stringify(i18n.messages));
+    }).catch(err => {
+      reject(err)
     });
+  })
 }
 
 export default i18n;

+ 50 - 49
src/views/learn-center/Seekresult.vue

@@ -6,7 +6,7 @@
     <HeaderOne
       :changeKeycode="changeKeycode"
       :keycode="keycode"
-      title="搜索结果"
+      :title="$t('Key248')"
       :classilfyID="classilfyID"
     />
     <!-- <div class="top">
@@ -94,27 +94,27 @@ export default {
       CourseList: null, //课程列表
       TextList: null, //教材列表
       dataList: null, //展示列表
-      seekContent: '', //搜索内容
-      gotoPage: '',
-      keycode: '',
+      seekContent: "", //搜索内容
+      gotoPage: "",
+      keycode: "",
       pageNum: 1,
       pageSize: 8,
       targetPage: 1,
       loading: false,
-      classilfyList: ['课程', this.$t("Key44")],
+      classilfyList: [],
       classilfyIndex: 0,
       classilfyID: null,
-    }
+    };
   },
   computed: {
     getCurrentQuestionView() {
       switch (this.classilfyIndex) {
         case 0:
-          return Course
+          return Course;
         case 1:
-          return Textbook
+          return Textbook;
         default:
-          return null
+          return null;
       }
     },
   },
@@ -122,11 +122,11 @@ export default {
     classilfyIndex(newval, oldval) {
       if (newval != oldval) {
         if (newval == 0) {
-          this.pageNum = 1
-          this.getData('课程')
+          this.pageNum = 1;
+          this.getData("课程");
         } else if (newval == 1) {
-          this.pageNum = 1
-          this.getData('教材')
+          this.pageNum = 1;
+          this.getData("教材");
         }
       }
     },
@@ -135,90 +135,91 @@ export default {
     handleSizeChange(val) {},
     // 跳页
     handleCurrentChange(val) {
-      this.pageNum = val
+      this.pageNum = val;
       if (this.classilfyIndex == 0) {
-        this.getData('课程')
+        this.getData("课程");
       } else if (this.classilfyIndex == 1) {
-        this.getData('教材')
+        this.getData("教材");
       }
     },
     // 切换分类
     cutClassilfy(item, i) {
-      this.classilfyIndex = i
+      this.classilfyIndex = i;
     },
     // 获取子组件传过来的keycode进行查询
     changeKeycode(val) {
-      this.keycode = val
+      this.keycode = val;
       if (this.classilfyIndex == 0) {
-        this.getData('课程')
+        this.getData("课程");
       } else if (this.classilfyIndex == 1) {
-        this.getData('教材')
+        this.getData("教材");
       }
     },
     // 输入目标页 并跳到目标页
     toPageChange() {
-      this.gotoPage = this.gotoPage.replace(/[^\d]/g, '') //使用空字符串去替换非数字的字符
+      this.gotoPage = this.gotoPage.replace(/[^\d]/g, ""); //使用空字符串去替换非数字的字符
       if (this.gotoPage > Math.ceil(this.CourseList.total / 8)) {
-        return
+        return;
       } else if (this.gotoPage != this.targetPage) {
-        this.targetPage = this.gotoPage * 1
-        this.pageNum = this.gotoPage * 1
+        this.targetPage = this.gotoPage * 1;
+        this.pageNum = this.gotoPage * 1;
         if (this.classilfyIndex == 0) {
-          this.getData('课程')
+          this.getData("课程");
         } else if (this.classilfyIndex == 1) {
-          this.getData('教材')
+          this.getData("教材");
         }
       }
     },
     // 获取数据
     getData(val) {
-      this.loading = true
-      if (val == '课程') {
+      this.loading = true;
+      if (val == "课程") {
         // 获取课程列表
-        cousrseAPI('page_query-PageQueryCourseList', {
+        cousrseAPI("page_query-PageQueryCourseList", {
           page_capacity: this.pageSize,
           cur_page: this.pageNum,
           finish_status: 53,
           release_status: 1,
           name: this.keycode,
         }).then((res) => {
-          this.dataList = res
-          this.CourseList = res
-          this.loading = false
-        })
+          this.dataList = res;
+          this.CourseList = res;
+          this.loading = false;
+        });
       }
-      TextbookAPI('book-book_manager-PageQueryBookList', {
+      TextbookAPI("book-book_manager-PageQueryBookList", {
         cur_page: this.pageNum,
         page_capacity: this.pageSize,
         name: this.keycode,
         publish_status: 1,
-        is_control_publish_scope: 'true',
+        is_control_publish_scope: "true",
       }).then((res) => {
-        this.TextList = res
-        if (val == '教材') {
-          this.dataList = null
-          this.dataList = this.TextList
-          this.loading = false
+        this.TextList = res;
+        if (val == "教材") {
+          this.dataList = null;
+          this.dataList = this.TextList;
+          this.loading = false;
         }
-      })
+      });
     },
   },
-  created() {
-    this.keycode = this.$route.query.keycode
-    this.classilfyID = this.$route.query.id
+  async created() {
+    this.keycode = this.$route.query.keycode;
+    this.classilfyID = this.$route.query.id;
     // classilfyIndex
     // if (this.$route.query.id == "COURSE") {
-    this.classilfyIndex = 0
-    this.getData('课程')
+    this.classilfyIndex = 0;
+    this.getData("课程");
     // } else {
     //   this.getData("教材");
     //   this.classilfyIndex = 1;
     // }
-    updateWordPack({
-        word_key_list: ["Key44"],
+    await updateWordPack({
+      word_key_list: ["Key44", "Key215", "Key248"],
     });
+    this.classilfyList = [this.$t("Key215"), this.$t("Key44")];
   },
-}
+};
 </script>
 
 <style lang="scss" scoped>

+ 14 - 10
src/views/learn-center/index.vue

@@ -12,8 +12,10 @@
           text-color="#000"
           active-text-color="#FF9900"
         >
-          <el-menu-item index="COURSE">课程</el-menu-item>
-          <el-menu-item index="TEXTBOOK">{{$t("Key44")}}</el-menu-item>
+          <el-menu-item index="COURSE"
+            ><!-- 课程 -->{{ $t("Key215") }}</el-menu-item
+          >
+          <el-menu-item index="TEXTBOOK">{{ $t("Key44") }}</el-menu-item>
           <!-- <el-menu-item index="LIVE LESSON">LIVE LESSON</el-menu-item>
         <el-menu-item index="VIDEO COURSE">VIDEO COURSE</el-menu-item> -->
         </el-menu>
@@ -28,7 +30,7 @@
             @click="gotoSeekResult"
             src="../../assets/learncenter/Group2149.png"
             alt=""
-            :class="[language_type=='AR'?'languageAR':'']"
+            :class="[language_type == 'AR' ? 'languageAR' : '']"
           />
         </div>
       </div>
@@ -43,7 +45,7 @@
           </el-carousel-item>
         </el-carousel>
       </div> -->
-      <div class="ClassifyList">
+      <div class="ClassifyList" v-if="isData">
         <div id="COURSE">
           <Course :classList="courseList" />
         </div>
@@ -83,6 +85,7 @@ export default {
 
   data() {
     return {
+      isData: false,
       seekContent: "", //搜索内容
       activeIndex: "COURSE", //默认展示精品课程
       navName: "COURSE",
@@ -192,7 +195,7 @@ export default {
       }
     },
   },
-  created() {
+  async created() {
     this.loading = true;
     // 获取课程列表  需要从中截取出4个作为轮播图
     cousrseAPI("page_query-PageQueryCourseList", {
@@ -222,9 +225,10 @@ export default {
       .catch(() => {
         this.loading = false;
       });
-    updateWordPack({
-        word_key_list: ["Key44","Key46"],
+    await updateWordPack({
+      word_key_list: ["Key44", "Key46", "Key147", "Key215"],
     });
+    this.isData = true;
   },
 };
 </script>
@@ -280,9 +284,9 @@ export default {
       right: 19px;
       top: 7px;
       cursor: pointer;
-      &.languageAR{
-          left: 19px;
-          right: auto;
+      &.languageAR {
+        left: 19px;
+        right: auto;
       }
     }
   }

+ 1 - 1
src/views/login.vue

@@ -1,5 +1,5 @@
 <template>
-  <div class="login-container">
+  <div class="login-container" v-if="configInfor">
     <div class="login-left">
       <div class="login-texts">
         <p>