From 07b5dcb4905a15d0b39a51219d51c57fbd5ca4d1 Mon Sep 17 00:00:00 2001
From: hcong <1050828145@qq.com>
Date: 星期四, 28 十一月 2024 13:35:04 +0800
Subject: [PATCH] 1. 新增登录页面 2. 新增登录接口 3. 新增stores/userToken.js 保存登录状态登录和退出登录 和 stores/activeCheck.js 保存登录超时和延时函数 4. components/core/Header完善退出登录点击事件 5. 新增cookie工具类 6. 新增登录工具类

---
 src/components/core/Header.vue |   53 ++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 34 insertions(+), 19 deletions(-)

diff --git a/src/components/core/Header.vue b/src/components/core/Header.vue
index 1a14d18..8129a04 100644
--- a/src/components/core/Header.vue
+++ b/src/components/core/Header.vue
@@ -1,40 +1,44 @@
 <template>
   <el-row align="middle" class="header">
-    <el-col :span="1">
-      <el-button
-        @click="collapsedSider"
-        icon="Fold"
-        circle
-        :class="rotateIcon"
-      />
+    <el-col :span="12">
+      <el-space>
+        <el-button @click="collapsedSider" icon="Fold" circle :class="rotateIcon" />
+        <el-breadcrumb separator="/" style="white-space: nowrap">
+          <el-breadcrumb-item v-for="(t, i) in navTitles" :key="i">{{ t }}</el-breadcrumb-item>
+        </el-breadcrumb>
+      </el-space>
     </el-col>
-    <el-col :span="18">
-      <el-breadcrumb separator="/" style="white-space: nowrap;">
-        <el-breadcrumb-item v-for="(t, i) in navTitles" :key="i">{{t}}</el-breadcrumb-item>
-      </el-breadcrumb>
-    </el-col>
-    <el-col :span="5" class="logout">
-        <el-button icon="SwitchButton">閫�鍑虹櫥褰�</el-button>
+    <el-col :span="12" class="logout">
+      <FYBgTaskDialog></FYBgTaskDialog>
+      <el-button icon="SwitchButton" @click="logout">閫�鍑虹櫥褰�</el-button>
     </el-col>
   </el-row>
 </template>
 
 <script>
+import { useUserStore } from '@/stores/userToken'
+import { useRouter } from 'vue-router';
+import { ElNotification } from 'element-plus';
 export default {
+  setup() {
+    const userStore = useUserStore()
+    const router = useRouter()
+    return { userStore, router }
+  },
   name: 'CoreHeader',
   props: {
     collapse: {
       type: Boolean,
-      default: false,
+      default: false
     },
     navTitles: {
       type: Array,
-      default: () => ['home','promotion list', 'promotion detail'],
+      default: () => ['home', 'promotion list', 'promotion detail']
     }
   },
   data() {
     return {
-      isCollapsed: this.collapse,
+      isCollapsed: this.collapse
     };
   },
   watch: {},
@@ -44,7 +48,7 @@
      */
     rotateIcon() {
       return ['menu-icon', this.isCollapsed ? 'rotate-icon' : ''];
-    },
+    }
   },
   methods: {
     /**
@@ -54,7 +58,18 @@
       this.isCollapsed = !this.isCollapsed;
       this.$emit('collapsedSider', this.isCollapsed);
     },
-  },
+    logout() {
+      this.userStore.logout()
+      this.router.push('/common/loginView')
+      ElNotification({
+        title: `閫�鍑烘垚鍔焋,
+        message: `閫�鍑烘垚鍔焋,
+        type: 'success',
+        // offset: 170,
+        position: 'bottom-left',
+      });
+    }
+  }
 };
 </script>
 

--
Gitblit v1.9.3