32 lines
1.2 KiB
YAML
32 lines
1.2 KiB
YAML
# Module Spec:vab-router-view(路由视图壳:keep-alive + 过渡 + reload 事件)
|
||
|
||
module:
|
||
id: vab-router-view
|
||
name: VabRouterView(router-view + keep-alive + reload)
|
||
type: ui
|
||
entrypoints:
|
||
- library/components/VabRouterView/index.vue
|
||
|
||
public_api:
|
||
concept:
|
||
- "统一承载页面 router-view,提供 keep-alive include 列表与过渡动画"
|
||
- "监听事件总线:reload-router-view,用于刷新当前视图缓存"
|
||
|
||
dependency_closure:
|
||
runtime:
|
||
- "vue-router:useRoute / <router-view>"
|
||
- "plugin-vab:$sub/$unsub(事件订阅)"
|
||
- "store-settings:theme.showProgressBar / theme.showPageTransition"
|
||
- "store-tabs:visitedRoutes(生成 keepAliveNameList)"
|
||
- "utils/routes:handleActivePath(生成 routerKey)"
|
||
- "config:keepAliveMaxNum"
|
||
- "nprogress(显示刷新进度条)"
|
||
|
||
acceptance:
|
||
- "路由切换时 keep-alive include 列表随 visitedRoutes 更新"
|
||
- "$sub('reload-router-view') 触发后,当前视图能被重新渲染(routerKey 变更)"
|
||
|
||
pitfalls:
|
||
- "存在 get-code 事件并依赖组件的 __source 字段;不同构建/插件下可能不存在"
|
||
- "未安装 plugin-vab 时 $sub/$unsub 不存在,reload/get-code 事件不会工作"
|