From d635b51ae0ffe922d7e56bbceb7229fe7a5fd8f2 Mon Sep 17 00:00:00 2001
From: pyt <626651354@qq.com>
Date: 星期四, 10 四月 2025 10:25:29 +0800
Subject: [PATCH] feat

---
 src/layouts/components/HeaderNav.vue |   32 +++++++++++++++++++++++++++++---
 1 files changed, 29 insertions(+), 3 deletions(-)

diff --git a/src/layouts/components/HeaderNav.vue b/src/layouts/components/HeaderNav.vue
index c7e9896..d88ea34 100644
--- a/src/layouts/components/HeaderNav.vue
+++ b/src/layouts/components/HeaderNav.vue
@@ -4,9 +4,9 @@
     <div class="user-logininfo">
       <div class="user-logininfo-icon">
         <!-- 折叠 -->
-        <!-- <i @click="clickFold" class="el-icon-s-fold"></i> -->
+        <i @click="clickFold" class="el-icon-s-fold"></i>
         <!-- 标签列表 -->
-        <div class="tag-list-container">
+        <div class="tag-list-container" @wheel.prevent="handleWheel">
           <div class="tag-list" v-for="tag in tagList" :key="tag.name">
             <div @click="goTag(tag)" :class="{ 'activeTag': tag.path === $route.path }">
               {{ tag.meta.title }}
@@ -34,6 +34,8 @@
   data() {
     return {
       userInfo: '',
+      scrollTimer: null,
+      scrollAmount: 0
     }
   },
   computed: {
@@ -72,6 +74,23 @@
     // 跳转标签
     goTag(tag) {
       this.$router.push(tag.path)
+    },
+    handleWheel(e) {
+      if (this.scrollTimer) {
+        this.scrollAmount += e.deltaY;
+        return;
+      }
+      
+      const container = e.currentTarget;
+      this.scrollAmount = e.deltaY;
+      
+      const scroll = () => {
+        container.scrollLeft += this.scrollAmount * 1.2; // 增加滚动速度
+        this.scrollAmount = 0;
+        this.scrollTimer = null;
+      };
+      
+      this.scrollTimer = setTimeout(scroll, 8); // 减少延迟时间
     }
   },
 }
@@ -86,12 +105,15 @@
   display: flex;
   align-items: center;
   justify-content: space-between;
+  overflow: hidden;
 
   .user-logininfo-icon {
+    margin-right: 30px;
     flex: 1;
-    flex-shrink: 0;
     display: flex;
     align-items: center;
+    min-width: 0;
+    overflow: hidden;
 
     i:first-child {
       margin-right: 21px;
@@ -105,6 +127,10 @@
       display: flex;
       align-items: center;
       overflow-x: auto;
+      flex: 1;
+      min-width: 0;
+      scroll-behavior: auto; // 移除平滑滚动,提高性能
+      -webkit-overflow-scrolling: touch;
 
       .tag-list {
         flex-shrink: 0;

--
Gitblit v1.7.1