# 项目指南 这是基于 **Vue Vben Admin** 的前端项目,使用 Vue 3 + TypeScript + Vite + Ant Design Vue。 ## 技术栈 - **框架**: Vue 3.5 + TypeScript 6.0 - **构建工具**: Vite 8.0 - **UI 组件**: Ant Design Vue 4.2 - **状态管理**: Pinia 3.0 + persistedstate - **路由**: Vue Router 5.1 - **表单验证**: VeeValidate + Zod - **HTTP 客户端**: Axios - **样式**: Tailwind CSS 4.3 + SCSS - **图表**: ECharts 6.1 - **富文本编辑器**: TinyMCE 7.9, Tiptap 3.26 - **流程图**: BPMN.js 18.16 ## 项目结构 ``` src/ ├── api/ # API 接口定义 ├── components/ # 公共组件 ├── composables/ # 组合式函数 ├── layouts/ # 布局组件 ├── locales/ # 国际化 ├── router/ # 路由配置 ├── stores/ # Pinia 状态管理 ├── styles/ # 全局样式 ├── utils/ # 工具函数 └── views/ # 页面组件 ``` ## 开发命令 ```bash # 开发 pnpm dev # 构建 pnpm build # 类型检查 pnpm typecheck # 预览构建结果 pnpm preview ``` ## 代码规范 ### 组件命名 - 组件文件使用 PascalCase: `UserList.vue` - 组件 name 使用 PascalCase: `defineOptions({ name: 'UserList' })` ### TypeScript - 禁止使用 `any` 类型 - Props 和 Emits 必须定义 TypeScript 接口 - 使用 `import type` 导入类型 ### Vue 组件 - 统一使用 `