From 019abc739d9e231c2ebfe9ca537f82e2e1843496 Mon Sep 17 00:00:00 2001
From: QYF-GitLab1 <1940665526@qq.com>
Date: 星期日, 24 八月 2025 21:24:39 +0800
Subject: [PATCH] 课程班级显示

---
 src/layout/components/headerPage.vue |   84 ++++++++++++++++++++++++++++--------------
 1 files changed, 56 insertions(+), 28 deletions(-)

diff --git a/src/layout/components/headerPage.vue b/src/layout/components/headerPage.vue
index b4ec4ec..a03c9ab 100644
--- a/src/layout/components/headerPage.vue
+++ b/src/layout/components/headerPage.vue
@@ -17,9 +17,9 @@
         <el-input
           style="width: 500px; height: 50px"
           placeholder="璇疯緭鍏ュ唴瀹�"
-          @change="gotoSearch"
           v-model="searchKey"
           :suffix-icon="Search"
+          @keyup.enter="gotoSearch"
         >
         </el-input>
         <div class="loginInfoBox">
@@ -36,15 +36,22 @@
           </div>
           <div v-else class="userInfoBox">
             <el-dropdown @command="handleCommand">
-              <span style="cursor: pointer">娆㈣繋鎮紝{{ userStore?.userInfo.name }}锛�</span>
-              <el-dropdown-menu slot="dropdown">
-                <el-dropdown-item icon="el-icon-user" command="gotoPersonalCenter"
-                  >涓汉涓績</el-dropdown-item
-                >
-                <el-dropdown-item icon="el-icon-switch-button" command="logout"
-                  >閫�鍑虹櫥褰�</el-dropdown-item
-                >
-              </el-dropdown-menu>
+              <span class="el-dropdown-link">
+                娆㈣繋鎮紝{{ userStore?.userInfo.name }}锛�
+                <el-icon class="el-icon--right">
+                  <arrow-down />
+                </el-icon>
+              </span>
+              <template #dropdown>
+                <el-dropdown-menu>
+                  <el-dropdown-item :icon="Avatar" command="gotoPersonalCenter"
+                    >涓汉涓績</el-dropdown-item
+                  >
+                  <el-dropdown-item :icon="SwitchButton" command="logout"
+                    >閫�鍑虹櫥褰�</el-dropdown-item
+                  >
+                </el-dropdown-menu>
+              </template>
             </el-dropdown>
           </div>
         </div>
@@ -69,10 +76,11 @@
 
 <script setup lang="ts">
 import login from './login.vue'
-import { onMounted, ref } from 'vue'
-import { Search } from '@element-plus/icons-vue'
-import { useUserStore } from '@/stores'
+import { onMounted, provide, ref } from 'vue'
+import { Search, Avatar, SwitchButton } from '@element-plus/icons-vue'
+import { useUserStore } from '@/store'
 import { useRouter } from 'vue-router'
+import { ElMessage } from 'element-plus'
 const userStore = useUserStore()
 const router = useRouter()
 
@@ -114,10 +122,36 @@
   console.log(userInfo.value, 'userInfo')
 })
 
-const gotoSearch = () => {}
-const handleCommand = () => {}
+const gotoSearch = () => {
+  router.push({
+    path: '/search',
+    query: {
+      key: searchKey.value,
+    },
+  })
+}
+const handleCommand = (item) => {
+  if (item === 'gotoPersonalCenter') {
+    router.push({
+      path: '/personalCenter',
+    })
+  }
+  if (item === 'logout') {
+    localStorage.clear()
+    router.push({
+      path: '/home',
+    })
+  }
+}
 const gotoPage = (item) => {
-  router.push(item.path)
+  if (item.path === '/teachingServices') {
+    ElMessage({
+      message: '寤鸿涓�...',
+      type: 'warning',
+    })
+  } else {
+    router.push(item.path)
+  }
 }
 </script>
 
@@ -134,17 +168,11 @@
     p {
       float: left;
     }
-    .loginInfoBox {
-      float: right;
-      .loginBtnBox {
-        a {
-          cursor: pointer;
-          text-decoration: none;
-          color: inherit;
-          margin: 0 4px;
-        }
-      }
-    }
+  }
+
+  .loginInfoBox {
+    width: 200px;
+    margin-left: 20px;
   }
   .logoBox {
     padding: 25px 0;
@@ -162,9 +190,9 @@
       width: 670px;
       float: right;
       padding-right: 10px;
-      line-height: 66px;
       display: flex;
       justify-content: space-between;
+      align-items: center;
       .searchItem {
         width: 120px;
         vertical-align: initial;

--
Gitblit v1.9.1