一、开发前规则体系构建
在启动项目前建立标准化规则体系是保障开发质量的核心基础,主要包含以下四类规则配置:
-
技术栈约束规则
通过自然语言指令明确限定技术选型范围,例如:”使用React 18+TypeScript开发,禁止引入jQuery等传统库”。对于组件库选择可指定:”仅允许使用Ant Design 5.x版本组件,样式变量需通过configProvider统一管理”。这种约束能有效避免AI生成不符合项目要求的代码。 -
代码规范强制规则
需定义详细的代码风格指南,包括但不限于:
- 命名规范:组件名采用PascalCase,变量名使用camelCase
- 结构规范:JSX单行不超过80字符,CSS采用BEM命名法
- 注释规范:复杂逻辑必须添加JSDoc注释
示例指令:”所有生成的代码需通过ESLint配置’airbnb-typescript’的校验,错误代码直接拒绝输出”
-
全局事件处理规则
定义跨页面共享逻辑,如:// 全局错误处理示例window.addEventListener('unhandledrejection', (event) => {logError('Promise rejection:', event.reason);});
需明确要求AI在每个页面初始化时自动注入这类公共代码。
-
开发边界限制规则
通过否定指令规避风险操作,例如:
- “禁止直接操作DOM,必须使用React Ref”
- “禁止使用window.localStorage,数据持久化需通过Redux Persist”
- “第三方API调用必须封装在services目录下”
二、项目初始化与版本控制
-
智能初始化流程
通过多轮对话完成项目骨架搭建:第一轮:创建React+Vite项目,配置TypeScript支持第二轮:安装必要依赖(axios, react-router-dom等)第三轮:生成基础目录结构(src/{components,pages,utils})第四轮:配置ESLint+Prettier并生成基础配置文件
每轮对话需验证生成结果,确保符合前期定义的规则体系。
-
Git版本管理最佳实践
初始化时自动生成标准化.gitignore文件:
```编译输出
dist/
build/
*.js.map
依赖目录
node_modules/
环境变量
.env.local
.env.*.local
推荐采用Git Flow工作流,通过指令要求AI在关键节点自动生成commit message,例如:"feat: 完成用户登录页面开发 #123"。### 三、模块化页面开发方法论1. **渐进式开发策略**采用"整体布局→功能模块→交互细节"的三阶段开发模式:- 第一阶段:使用Container组件搭建页面骨架```jsx// 示例:用户中心页面骨架function UserCenter() {return (<div className="user-center"><Header /><main className="content-wrapper"><Sidebar />{/* 动态内容区 */}{children}</main></div>);}
- 第二阶段:填充各功能模块(个人信息、订单列表等)
- 第三阶段:实现表单验证、动画效果等交互细节
- 多模态沟通技巧
- 视觉稿开发:上传Figma截图并标注关键尺寸
```
参考附件截图,实现:
- 顶部导航栏固定高度64px
- 主内容区左右边距24px
- 卡片阴影使用box-shadow: 0 2px 8px rgba(0,0,0,0.1)
```
- 文字描述开发:当无设计稿时,采用结构化描述
```
需要实现一个响应式表格组件,要求: - 桌面端显示5列,移动端合并为2列
- 支持排序和分页功能
- 行选中状态使用蓝色背景高亮
```
- 状态管理集成方案
根据项目复杂度选择状态管理方案:
- 简单场景:使用React Context + useReducer
- 中等规模:集成Redux Toolkit
- 复杂系统:考虑微前端架构下的状态共享
示例指令:”使用Redux Toolkit创建用户信息slice,包含fetchUser异步action”
四、调试与质量保障体系
-
动态错误拦截机制
配置开发环境自动捕获常见错误:// 在入口文件添加全局错误监听process.on('unhandledRejection', (reason) => {console.error('Unhandled Rejection:', reason);// 发送错误到监控系统});
要求AI在生成代码时自动添加try-catch块处理异步操作。
-
可视化测试方案
结合Storybook实现组件级测试:
```
生成用户头像组件的Story文件,要求: - 包含默认状态、加载状态、错误状态三种场景
- 支持动态传入size参数(32/48/64)
-
添加knobs面板方便交互调试
``` -
性能优化检查清单
在开发后期执行以下优化:
- 图片懒加载:使用IntersectionObserver API
- 代码分割:动态导入路由组件
- 缓存策略:Service Worker预缓存关键资源
示例指令:”为所有路由组件添加React.lazy加载,并配置Suspense回退UI”
五、持续交付流程设计
- 自动化部署配置
通过CI/CD指令链实现:
``` - 代码提交触发Lint检查
- 通过后执行单元测试(Jest覆盖率>80%)
- 构建生产环境包并上传对象存储
- 部署到测试环境进行E2E测试
-
人工验收后发布到生产环境
``` -
监控告警集成
要求AI在关键路径插入监控代码:// 用户登录性能监控const startTime = performance.now();try {await login(credentials);} finally {const duration = performance.now() - startTime;logPerformance('login', duration);}
通过这种系统化的开发方法,开发者可以充分发挥AI工具的生产力优势,同时保持对项目质量的完全掌控。实际开发中建议采用”小步快跑”策略,每个功能模块开发完成后立即进行验证,避免后期大规模重构。对于复杂交互场景,可结合传统开发方式与AI生成代码,实现最佳开发效率与代码质量的平衡。