32 lines
1.3 KiB
YAML
32 lines
1.3 KiB
YAML
# Module Spec:vab-column-bar(列式布局左侧 Tab + 二级菜单)
|
||
|
||
module:
|
||
id: vab-column-bar
|
||
name: VabColumnBar(Column 布局列栏)
|
||
type: ui
|
||
entrypoints:
|
||
- library/components/VabColumnBar/index.vue
|
||
|
||
public_api:
|
||
concept:
|
||
- "Column 布局专用:左侧 tabs 切换顶级菜单,右侧 el-menu 渲染 partialRoutes(二级菜单)"
|
||
|
||
dependency_closure:
|
||
runtime:
|
||
- "store-settings:theme(layout/columnStyle)/collapse + foldSideBar/openSideBar"
|
||
- "store-routes:tab/tabMenu/activeMenu/routes/partialRoutes"
|
||
- "config:defaultOpeneds/openFirstMenu/uniqueOpened"
|
||
- "vue-router:useRoute/useRouter"
|
||
- "utils/validate:isExternal"
|
||
- "i18n:translate()"
|
||
- "styles:@vab/styles/variables/variables.module.scss(column-second-menu-background 等)"
|
||
- "Element Plus:el-scrollbar/el-tabs/el-tab-pane/el-menu/el-divider"
|
||
- "VabLogo/VabMenu/VabIcon"
|
||
|
||
acceptance:
|
||
- "theme.layout==='column' 时可用;route.meta.noColumn=true 时会自动折叠侧边栏并隐藏 fold-unfold"
|
||
- "点击 tab:若 tabMenu.path 为外链则 window.open;否则(openFirstMenu=true)跳转到 redirect 或自身"
|
||
|
||
pitfalls:
|
||
- "直接操作 DOM:document.querySelector('.fold-unfold') 修改 style;新项目结构不同需适配"
|