diff --git a/src/layout/LayoutColumns.vue b/src/layout/LayoutColumns.vue index 8844a94..5435a09 100644 --- a/src/layout/LayoutColumns.vue +++ b/src/layout/LayoutColumns.vue @@ -5,21 +5,27 @@ -
-
{{ appStore.getTitle() }}
+
+ +
+ {{ appStore.getTitle() }} +
-
+
+ + + @@ -32,6 +38,8 @@ import Tabs from './components/Tabs/index.vue' import { useAppStore } from '@/stores' import { useLevelMenu } from '@/layout/hooks/useLevelMenu' import { useDevice } from '@/hooks' +import NoticePopup from '@/views/user/message/components/NoticePopup.vue' +import { getToken } from '@/utils/auth' defineOptions({ name: 'LayoutColumns' }) @@ -40,6 +48,29 @@ const { isDesktop } = useDevice() const { oneLevelMenus, twoLevelMenus, oneLevelMenuActiveRoute, getOneLevelMenus, handleMenuItemClickByItem } = useLevelMenu() getOneLevelMenus() +// 菜单样式 - 根据折叠状态动态调整宽度 +const menuStyle = computed(() => { + return { + width: appStore.menuCollapse ? '48px' : '200px', + } +}) +// 公告弹窗引用 +const noticePopupRef = ref>() + +// 检查并显示未读公告 +const checkAndShowNotices = () => { + const token = getToken() + + // 如果有token,检查未读公告 + if (token) { + setTimeout(() => { + noticePopupRef.value?.open() + }, 1000) // 延迟1秒显示,让页面先加载完成 + } +} +onMounted(() => { + checkAndShowNotices() +})