Files
2026-10-25 17:24:27 +08:00

1.8 KiB

9.16 布局系统

:::tip 概述 布局在 ui/src/layout/:主框架 index.vue + parentLayout.vue(多级嵌套),components/ 内含侧边栏、顶栏、标签页、面包屑等区域组件。菜单驱动侧边栏渲染。 :::

布局结构

┌──────────────────────────────────────┐
│ 顶栏:面包屑 + 标签页 + 用户头像 + 锁屏 │
├────────────┬─────────────────────────┤
│ 侧边栏      │  内容区(router-view)    │
│ (菜单树)  │                          │
└────────────┴─────────────────────────┘

组件划分

区域 内容
index.vue 主布局(区域编排)
parentLayout.vue 动态路由的父级壳(嵌套路由承接)
侧边栏 按 asyncRoute 菜单树渲染,图标经 router-icons 映射
顶栏 折叠开关、面包屑、标签页、用户下拉
标签页 tabsView store 驱动的多页签

菜单渲染

侧边栏数据来自动态路由表(GetMenus 生成):隐藏菜单(hide=1)、停用菜单(status=1)在生成阶段已过滤——菜单表即侧边栏,前端不维护第二份菜单配置。

响应式

布局断点经 breakpointEnum 与 element-resize-detector 处理:窄屏自动折叠侧边栏,移动端适配基础布局。

定制入口

  • 区域增减改 index.vue 布局编排
  • 各区域内部样式在对应组件 scoped 内
  • 全局尺寸(侧边栏宽度、顶栏高度)在 designSetting store

相关