Files
Web_Template_Vue3_Dev/AI-Coding/02-Boot-Sequence.md

1.1 KiB
Raw Permalink Blame History

02. 关键入口与初始化顺序Boot Sequence

入口文件:src/main.ts

AI 需要知道“系统从哪里开始、按什么顺序挂载能力”。关键点:

  1. validateSecretKey():启动前校验(与授权/环境有关)
  2. 生产环境 Mock
    • 条件:process.env.NODE_ENV === 'production'baseURL 不是外链(!isExternal(baseURL)
    • 动作:require('@/utils/static').mockXHR()
  3. 初始化链路:
    • setupVab(app)(全局样式、图标、插件)
    • setupI18n(app)
    • setupStore(app)
    • setupRouter(app).isReady().then(mount)

全局插件聚合:library/index.ts

setupVab(app) 做了这些事:

  • 引入全局样式:library/styles/vab.scss
  • 注册图标:
    • VabIcon(来自 vab-icons
    • @element-plus/icons-vue 全量组件注册
  • 自动加载背景样式:library/styles/background/*.scss
  • 自动加载插件:library/plugins/**/*.ts(默认导出 Vue 插件)

复用提示:自动全量加载在“抽取模块”时容易带入不必要依赖;迁移时应以“最小闭包”为原则(见 AI-Reuse-Playbook.md)。