From 2a9112650755dc3c98e6806f8eec48bce7741c20 Mon Sep 17 00:00:00 2001
From: gaoluyang <2820782392@qq.com>
Date: 星期五, 06 六月 2025 17:28:10 +0800
Subject: [PATCH] 1.样式根据页面宽度修改 2.系统标题修改

---
 src/layout/components/Navbar.vue |   47 ++++++++++++++++++++++++++++++++++++++++++++---
 1 files changed, 44 insertions(+), 3 deletions(-)

diff --git a/src/layout/components/Navbar.vue b/src/layout/components/Navbar.vue
index 42f14c1..b6312ca 100644
--- a/src/layout/components/Navbar.vue
+++ b/src/layout/components/Navbar.vue
@@ -2,8 +2,10 @@
   <div class="navbar">
 <!--    <hamburger id="hamburger-container" :is-active="appStore.sidebar.opened" class="hamburger-container" @toggleClick="toggleSideBar" />-->
 <!--    <breadcrumb v-if="!settingsStore.topNav" id="breadcrumb-container" class="breadcrumb-container" />-->
-<!--    <top-nav v-if="settingsStore.topNav" id="topmenu-container" class="topmenu-container" />-->
-    <div class="logo">
+    <div v-if="sidebar.hide">
+      <top-nav id="topmenu-container" class="topmenu-container" />
+    </div>
+    <div class="logo" v-if="!sidebar.hide">
       <img src="@/assets/logo/logo.png" alt=""/>
     </div>
     <div class="right-menu">
@@ -21,6 +23,9 @@
             <router-link to="/user/profile">
               <el-dropdown-item>涓汉涓績</el-dropdown-item>
             </router-link>
+<!--            <el-dropdown-item command="setLayout" v-if="settingsStore.showSettings">-->
+<!--              <span>甯冨眬璁剧疆</span>-->
+<!--            </el-dropdown-item>-->
             <el-dropdown-item divided command="logout">
               <span>閫�鍑虹櫥褰�</span>
             </el-dropdown-item>
@@ -35,6 +40,7 @@
 </template>
 
 <script setup>
+import {useWindowSize} from '@vueuse/core'
 import { ElMessageBox } from 'element-plus'
 import Breadcrumb from '@/components/Breadcrumb'
 import TopNav from '@/components/TopNav'
@@ -47,11 +53,47 @@
 import useAppStore from '@/store/modules/app'
 import useUserStore from '@/store/modules/user'
 import useSettingsStore from '@/store/modules/settings'
+const sidebar = computed(() => useAppStore().sidebar)
+const device = computed(() => useAppStore().device)
+import Sidebar from "@/layout/components/Sidebar/index.vue";
 
 const appStore = useAppStore()
 const userStore = useUserStore()
 const settingsStore = useSettingsStore()
+const isShowTop = ref(false)
 
+const { width, height } = useWindowSize()
+const WIDTH = 992 // refer to Bootstrap's responsive design
+
+watch(() => device.value, () => {
+  if (device.value === 'mobile' && sidebar.value.opened) {
+    useAppStore().closeSideBar({ withoutAnimation: false })
+  }
+})
+
+watchEffect(() => {
+  if (width.value - 1 < WIDTH) {
+    useAppStore().toggleDevice('mobile')
+    appStore.toggleSideBarHide(true)
+    useAppStore().closeSideBar({ withoutAnimation: true })
+  } else {
+    useAppStore().toggleDevice('desktop')
+    appStore.toggleSideBarHide(false)
+  }
+})
+// 鏍规嵁绐楀彛瀹藉害璁剧疆 isShowTop
+// const handleResize = () => {
+//   settingsStore.topNav = !(window.innerWidth < 992)
+// }
+//
+// onMounted(() => {
+//   handleResize() // 鍒濆鍒ゆ柇涓�娆�
+//   window.addEventListener('resize', handleResize)
+// })
+//
+// onUnmounted(() => {
+//   window.removeEventListener('resize', handleResize)
+// })
 function toggleSideBar() {
   appStore.toggleSideBar()
 }
@@ -122,7 +164,6 @@
 
   .topmenu-container {
     position: absolute;
-    left: 50px;
   }
 
   .errLog-container {

--
Gitblit v1.9.3