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