From 3dd146f8719fc73246bfce82a83f8707343bb295 Mon Sep 17 00:00:00 2001 From: Yuhang Wu Date: Tue, 2 Jun 2026 14:33:30 +0800 Subject: [PATCH] =?UTF-8?q?```=20feat(layout):=20=E6=B7=BB=E5=8A=A0?= =?UTF-8?q?=E8=B7=AF=E7=94=B1=E8=A7=86=E5=9B=BE=E5=88=B7=E6=96=B0=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 BasicLayout 中添加 viewKey 响应式变量用于控制 router-view 的重新挂载 - 监听自定义 'app:refresh-view' 事件实现页面刷新功能 - 修改 router-view 组件 key 值为 viewKey + '-' + r.fullPath 实现条件渲染 feat(tabs-nav): 优化标签页操作功能 - 添加 handleRefresh 方法通过 dispatchEvent 触发页面刷新事件 - 实现 handleCloseOthers、handleCloseRight、handleCloseAll 方法 - 优化 handleTabClick 避免重复点击当前路由 - 移除无用的激活状态小圆点和右键菜单注释代码 refactor(mock): 调整 mock 数据导入逻辑 - 将 import.meta.env.DEV 条件判断改为直接导入,简化代码结构 ``` --- admin-snack/src/layouts/BasicLayout.vue | 16 +++++++- .../src/layouts/components/TabsNav.vue | 39 ++++++++++--------- admin-snack/src/main.ts | 2 +- 3 files changed, 36 insertions(+), 21 deletions(-) diff --git a/admin-snack/src/layouts/BasicLayout.vue b/admin-snack/src/layouts/BasicLayout.vue index f235bfd..a07e3c6 100644 --- a/admin-snack/src/layouts/BasicLayout.vue +++ b/admin-snack/src/layouts/BasicLayout.vue @@ -1,5 +1,5 @@ @@ -51,10 +63,8 @@ function showContextMenu(e: MouseEvent, path: string) { :class="['tab-item', { active: tab.path === tabsStore.activeTab }]" @click="handleTabClick(tab.path)" > - {{ tab.title }} - -
@@ -78,15 +87,9 @@ function showContextMenu(e: MouseEvent, path: string) { diff --git a/admin-snack/src/main.ts b/admin-snack/src/main.ts index f9b7229..f1c471f 100644 --- a/admin-snack/src/main.ts +++ b/admin-snack/src/main.ts @@ -23,7 +23,7 @@ import './assets/styles/main.scss' import './permission' // Mock 拦截(开发阶段用本地假数据,启动后端后可注释此行) -import.meta.env.DEV && import('./mock') +import './mock' const app = createApp(App)