03 架构设计
3.1 应用启动
入口为 src/main.js,启动过程由 bootstrap 模块组织:创建 Vue 根实例,注册 Router、Store、i18n 和全局插件,执行初始化,最后挂载 App.vue。
App.vue 负责根级布局和路由视图,不应承载具体业务请求。
3.2 分层原则
- views:页面编排、筛选、表格和弹窗状态。
- components:可复用 UI 或业务组件。
- api:接口地址、参数和响应转换。
- store:跨页面共享的用户、权限、系统和装修状态。
- router:静态路由、动态路由和导航守卫。
- utils:通用函数。
- styles:全局样式和主题变量。
页面通过 API 和 Store 访问数据,不应重复实现 Token、权限和错误处理。
3.3 全局初始化
启动阶段通常恢复登录信息、获取当前用户和权限菜单、初始化系统配置与语言、注册动态路由,然后进入首页或恢复目标页面。初始化失败时应根据错误类型跳转登录页或给出明确提示。
3.4 页面数据流
text
进入页面 → 默认筛选 → 请求列表/详情 → 保存 loading/data/error
→ 用户操作 → 校验 → API → 更新 Store 或重新查询列表操作完成后优先重新请求或精确更新数据,避免页面展示过期状态。
