@@ -4,87 +4,26 @@ alwaysApply: true
44
55# 项目开发规范
66
7- - 你是一位前端开发专家,精通前端架构
8-
9- ## 技术栈
10-
11- - 框架: Vue 3.5+
12- - 打包构建工具: Vite 7+
13- - 路由管理: Vue Router
14- - 状态管理: Pinia
15- - UI 组件库: Element Plus
16- - CSS 预处理器: Scss
17- - 代码校验与格式化: ESLint
18- - 开发语言: TypeScript
19- - 包管理工具: pnpm
20- - 网络请求: Axios
21-
22- ## 导入规范
7+ ## 导入
238
249- 使用路径别名 `@` 指向 `src` 目录
2510- 使用路径别名 `@@` 指向 `src/common` 目录
2611
27- ## 目录结构
28-
29- ```sh
30- # v3-admin-vite
31- ├─ .husky # commit 时进行代码校验和格式化
32- ├─ .vscode # vscode 配置和插件
33- ├─ public
34- │ ├─ favicon.ico # 网站头像
35- │ ├─ app-loading.css # 首屏 loading 动画
36- │ └─ detect-ie.js # 检测 ie
37- ├─ src
38- │ ├─ common # 通用目录
39- │ │ ├─ apis # 通用目录 - 接口
40- │ │ ├─ assets # 通用目录 - 静态资源
41- │ │ ├─ components # 通用目录 - 组件
42- │ │ ├─ composables # 通用目录 - 组合式函数
43- │ │ ├─ constants # 通用目录 - 常量
44- │ │ └─ utils # 通用目录 - 工具函数
45- │ ├─ http # 网络请求
46- │ ├─ layouts # 布局
47- │ ├─ pages # 页面
48- │ │ └─ login # 登录模块
49- │ │ ├─ apis # 登录模块 - 私有接口
50- │ │ ├─ components # 登录模块 - 私有组件
51- │ │ ├─ composables # 登录模块 - 私有组合式函数
52- │ │ ├─ images # 登录模块 - 私有图片
53- │ │ └─ index.vue # 登录模块 - 页面
54- │ ├─ pinia # 状态管理
55- │ ├─ plugins # 插件(全局组件、自定义指令等)
56- │ ├─ router # 路由
57- │ ├─ App.vue # 入口页面
58- │ └─ main.ts # 入口文件
59- ├─ tests # 单元测试
60- ├─ types # 类型声明
61- ├─ .editorconfig # 编辑器配置
62- ├─ .env # 所有环境
63- ├─ .env.development # 开发环境
64- ├─ .env.production # 生产环境
65- ├─ .env.staging # 预发布环境
66- ├─ eslint.config.js # eslint 配置
67- ├─ tsconfig.json # ts 配置
68- ├─ uno.config.ts # unocss 配置
69- └─ vite.config.ts # vite 配置
70- ```
71-
72- - 保持目录结构清晰,遵循现有目录规范
73- - 同一个业务逻辑的代码和资源应当被收拢到了一起,避免在不同的目录间来回跳跃 (例如登录模块的接口应该放在 `@/pages/login/apis` 而不是 `@/common/apis`)
74-
75- ## 代码
12+ ## 编码
7613
7714- 编写整洁不冗余、可读性强的代码,始终提取共用逻辑
78- - 编写对开发者友好的注释
15+ - 针对关键步骤和方法编写对开发者友好的注释
7916- 代码必须能够立即运行,包含所有必要的导入和依赖
8017- 尽量避免使用兼容性不好的 JS、CSS 语法,使用时必须提供相应的注释
81- - 建议参考项目已有代码的编码风格
18+ - 优先参考项目已有代码的编码风格
19+ - 优先使用项目内置的组件和工具,其次是已引入的第三方依赖,避免重新发明轮子
8220
8321## 代码检查
8422
8523- 使用 ESLint 进行代码校验与格式化
8624- 禁用 Prettier 进行代码格式化
8725
88- ## 其他
26+ ## 本地环境
8927
90- - 优先使用现有第三方依赖,避免重新发明轮子
28+ - 使用 node 版本 20.19+ 或 22.12+ 或最新稳定版
29+ - 包管理工具使用 pnpm 10+ 或最新稳定版
0 commit comments