diff --git a/openhis-ui-vue3/src/layout/components/Settings/index.vue b/openhis-ui-vue3/src/layout/components/Settings/index.vue
index 7470cd056..f81c15c91 100755
--- a/openhis-ui-vue3/src/layout/components/Settings/index.vue
+++ b/openhis-ui-vue3/src/layout/components/Settings/index.vue
@@ -167,20 +167,20 @@ function handleNavType(val) {
}
/** 菜单导航设置 */
-watch(() => navType, val => {
- if (val.value == 1) {
- // 纯左侧菜单
+watch(() => navType.value, val => {
+ if (val == 1) {
+ // 纯左侧菜单:显示侧边栏,使用全部路由
appStore.sidebar.opened = true
appStore.toggleSideBarHide(false)
permissionStore.setSidebarRouters(permissionStore.defaultRoutes)
}
- if (val.value == 2) {
- // 混合菜单:顶部显示一级菜单,左侧显示子菜单
+ if (val == 2) {
+ // 混合菜单:顶部显示一级菜单,侧边栏由 TopNav activeRoutes 自动过滤
appStore.sidebar.opened = true
appStore.toggleSideBarHide(false)
- permissionStore.setSidebarRouters(permissionStore.defaultRoutes)
+ // 保留当前 sidebarRouters,TopNav 组件会根据当前路由自动筛选
}
- if (val.value == 3) {
+ if (val == 3) {
// 纯顶部菜单:隐藏侧边栏
appStore.sidebar.opened = false
appStore.toggleSideBarHide(true)
diff --git a/openhis-ui-vue3/src/layout/components/TopBar/index.vue b/openhis-ui-vue3/src/layout/components/TopBar/index.vue
index e42f28f55..213a457f1 100644
--- a/openhis-ui-vue3/src/layout/components/TopBar/index.vue
+++ b/openhis-ui-vue3/src/layout/components/TopBar/index.vue
@@ -1,68 +1,267 @@
-