2.9 KiB
2.9 KiB
Repository Guidelines
项目结构与模块组织
src/存放核心前端代码:pages/管理业务页面(登录、用户管理、个人信息),components/复用组件,api/与后端交互封装,store/保存全局设置与标签页状态,utils/管理工具函数,mock/仅在本地调试启用。docs/收录 API 对接与集成报告,提交前务必同步更新。dist/为pnpm run build产物,禁止手动修改;.env.*提供环境变量,请按需复制调整。
构建与开发命令
| 命令 | 说明 |
|---|---|
pnpm install |
安装依赖,项目首选 pnpm(若使用 npm,需同步更新锁文件)。 |
pnpm run dev |
启动 Vite 开发服务器,默认走 /api 代理到本地 8080。 |
pnpm run build |
生成产物到 dist/,用于联调或上线前校验。 |
pnpm run preview |
以本地静态服务验证构建结果。 |
pnpm run eslint / pnpm run stylelint |
校验并自动修复 TS/TSX 与 Less。 |
pnpm run pre-commit |
执行 pretty-quick、ESLint、Stylelint,PR 前必跑。 |
编码风格与命名
- 语法统一使用 TypeScript + React 17 Hooks,目录与文件采用小写连字符(示例:
user-management)。 - ESLint 继承
plugin:@typescript-eslint/recommended与plugin:react-hooks/recommended;Prettier 约定 2 空格缩进、单引号、强制分号。 - 样式使用 Less + CSS Modules,遵循
.module.less命名,Stylelint 规则在.stylelintrc中定义。
测试指引
- 当前仓库尚未集成自动化测试;提交复杂功能时,需给出手工测试步骤,并优先在
src/__tests__(或相应页面目录)补充*.spec.tsx。 - 覆盖重点:核心表单(登录、用户管理)与 API 适配层,可借助 Jest + @testing-library/react;命名遵循
模块名.行为.spec.tsx。
提交与 PR 规范
- Commit 信息遵循
type(scope): 描述,与现有记录(如feat(布局): ...、style(导航栏): ...)保持一致,描述使用简体中文。 - Pull Request 需包含:变更摘要、关联 Issue/需求编号、截图或命令输出、测试与 lint 结果;若改动 API 或配置,同步更新
docs/与.env.*示例。
安全与配置提示
.env.development默认将VITE_API_BASE_URL指向/api,生产环境务必更新为真实网关地址,避免调试代理泄漏。- Mock 入口在
src/main.tsx引入,如需生产构建剔除,可通过环境变量包装import './mock',防止将虚拟数据发布到线上。