# 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](AI-Reuse-Playbook.md))。