2.4 KiB
2.4 KiB
01. 仓库地图(Directory Map)
目标:让 AI 快速定位“要复用的能力”在哪个目录、入口是什么、依赖闭包有哪些。
src/(应用主代码)
src/main.ts:应用入口;决定 mock/pwa 与各子系统初始化顺序src/App.vue:根组件;包含生产环境禁调试逻辑(disable-devtool)src/router/:路由与权限控制(重点:index.ts、permissions)src/store/:Pinia 初始化与业务 store 模块src/i18n/:国际化初始化、语言获取与翻译辅助src/api/:按域拆分 API 调用函数(示例:src/api/router.ts)src/utils/:通用工具与基础能力(时间格式化、树结构转换、UUID 等)src/views/:业务页面集合(通常与路由对应)src/icon/:图标加载(由library/index.ts里的import '@/icon'引入)src/config/:运行时/构建期配置聚合导出(vue.config.js会require('./src/config'))
library/(模板基础库)
library/index.ts:setupVab(app)的实现:- 全局样式:
library/styles/vab.scss - 图标注册:
vab-icons+@element-plus/icons-vue - 背景样式:
library/styles/background/*.scss - 插件加载:
library/plugins/**/*.ts并app.use()
- 全局样式:
library/build/:构建期扩展(webpack chain、vue plugins)
library/plugins/(全局插件)
vab.ts:全局注入(gp)与事件总线($pub/$sub/$unsub)directive.ts:指令(v-permissions)errorLog.ts:全局错误捕获(app.config.errorHandler)support.ts:构建信息输出/依赖检查
library/components/(可复用 UI 组件库)
Vab*前缀:约定为基础组件/布局子组件(菜单、tabs、header、breadcrumb 等)VabTheme:主题系统入口(主题抽屉/设置面板),依赖$pub/$sub与 settings store
library/layouts/(布局体系)
library/layouts/index.vue:主 Layout 入口(路由壳)library/layouts/VabLayout*:多套布局可选(垂直/横向/综合/浮动/分栏等)
mock/(开发期 Mock)
mock/index.js:devServer 中间件;读取并注册mock/controller/*mock/controller/*.js:每个文件导出路由数组(url/type/response)
types/(类型声明)
types/*.d.ts:路由/store/theme/vab 等声明,配合/#别名使用