框架包、宿主和子系统
本文导航

框架包、宿主和子系统
owl-ui 自己不会 app.mount。宿主的入口大致是这样:
import { createFlexAdmin } from "@bit-labs.cn/owl-ui";
import { adminSubsystem } from "@bit-labs.cn/owl-admin-ui";
const app = await createFlexAdmin({
subsystems: [adminSubsystem]
});
app.mount("#app");
三层职责不要混:
| 角色 | 代码在哪 | 负责 |
|---|---|---|
| 框架包 owl-ui | owl-ui/src |
路由、布局、登录态、HTTP、子系统扩展点 |
| 宿主 | 各业务仓库的 frontend/admin |
platform-config.json、构建、调用 createFlexAdmin |
| 子系统 | 例如 owl-admin-ui、业务前端包 |
页面、静态路由、视图模块、菜单贡献 |
框架自带的页面只有登录、欢迎、错误页和布局壳。业务列表、表单不要写进 owl-ui/src/views。写进去之后,每个使用这个框架的项目都会带上这个页面。
宿主必须保证 public/platform-config.json 能被请求到。getPlatformConfig 失败会直接抛错,应用不会降级启动。
子系统只能在 createFlexAdmin({ subsystems }) 里传入。应用创建之后再调 registerSubsystems 来不及:路由表和视图模块是在 router 使用之前写进 registry 的。
评论
加载评论中…