更新于

前端开发者用 AI 编程的实战工作流


前端是最适合 AI 协作的方向之一:组件结构稳定、样式语义清晰、TypeScript 类型可验证。本文给前端工程师一份具体到任务的实战工作流。

一、为什么前端特别适合 AI

因素解释
模式化高组件 / hooks / route 都有套路
类型系统强TypeScript 自动验证
视觉可验证浏览器一看就知道对错
工具生态完整ESLint / Prettier 自动修风格
Stack 集中React + Tailwind 是绝对主流

二、组件生成

> 在 src/components/user-card/ 下创建 UserCard 组件:
> - props: name, email, avatarUrl, role
> - role 是 'admin' | 'user' | 'guest',不同 role 显示不同 badge 颜色
> - 用 Tailwind,符合项目设计系统(看 src/styles)
> - 写 *.test.tsx 用 RTL 测三个 role 的渲染
> - 加 .stories.tsx 故事

Cursor Composer 一次性给完整文件。关键是 prompt 里说清”看 src/styles”——它会自动适配你的设计风格。

三、TypeScript 类型补全

最被低估的用法。

type ApiResponse = ...;   // 复杂联合类型

选中类型 → Cmd+K:

> 把这个类型拆成 3 个有意义的子类型,加 JSDoc

或者:

> 给这个 API 响应推断 TypeScript 类型:[贴 JSON]

zod-to-json-schema 之类工具的 AI 等价。

四、Tailwind 样式调试

> 这个组件在小屏幕(< 640px)布局错乱。
> 当前 DOM:[F12 复制 outerHTML]
> 修复响应式断点。

AI 看 DOM + class,给你 fix。比手工 trial-error 快 5 倍。

五、Tailwind 重构(utility 太长怎么办)

> 这个组件 className 有 30 个 utility,太长。
> 提取重复模式为 @apply 或 cn() 辅助函数。
> 不改视觉。

AI 能识别”卡片 / 按钮 / 标题”这种语义,重构成可复用的 class 组合。

六、表单(最适合 AI 的场景)

> 创建注册表单:
> - email、password、confirmPassword
> - 用 react-hook-form + zod
> - 显示行内错误
> - Submit 按钮在 loading / disabled 状态有 spinner
> - 用项目里的 Input / Button / Form 组件(src/components/ui/)

完整表单 + 验证 + UX 一次到位。前端最耗时的”重复劳动”被消除。

七、动画

> 给这个 Modal 加进出场动画:
> - 进场:scale 0.95→1 + opacity 0→1,350ms
> - 出场:反向,250ms
> - 用 framer-motion
> - 注意 unmount 时机

AI 写动画比手工调贝塞尔曲线快。先要个能跑的,再调细节

八、错误诊断

> 这段代码报错:[贴 console error]
> 当前代码:[贴文件]
> 找出根因并修复。

特别是 React 的”too many re-renders”、“useEffect missing deps” 这类典型错。

九、性能优化

> 这个组件每次父组件 render 都会 re-render。
> 当前实现:[贴]
> 用 useMemo / useCallback / React.memo 优化。
> 但不要过度优化,只对真实必要的地方下手。

最后一句很重要——AI 不加约束会乱加 memo。

十、UI 重写(从设计稿)

把 Figma / 截图直接喂给视觉模型:

> [贴图片]
> 用 React + Tailwind 实现这个设计。
> 用 src/components/ui/ 已有组件优先。
> 不要硬编码颜色,用 Tailwind 主题。

Gemini 2.5 Pro 在多图理解上最强,做这个特别合适。详见 LLM Vision API 国内对比

十一、迁移类任务

任务AI 是否合适
React 17 → 19✓ 套路明确
Vue 2 → 3
样式 CSS → Tailwind
Webpack → Vite
moment.js → date-fns
把 class component 改成 hook
业务逻辑大改✗(需要人决策)

十二、写测试

> 给 UserCard 组件加 RTL 测试:
> - 渲染 3 种 role
> - 点击事件
> - 异步加载状态
> - error 边界
> 用项目里现有的 test utilities(src/test/)。

测试是 AI 收益最大的地方之一。手工写测试枯燥又必须,AI 帮你写。

十三、E2E(Playwright)

> 写 e2e 测注册流程:
> - 访问 /signup
> - 填表单
> - 点 Submit
> - 验证 redirect 到 /onboarding
> - 验证页面显示用户邮箱
> 用 page.getByRole 优先,不要用 selector

AI 用 best practice 写 Playwright,比新手写得规范。

十四、CSS-in-JS 时代的差异

如果用 styled-components / emotion,prompt 里讲清楚:

> 注意:项目用 styled-components,不要混 Tailwind。
> 风格遵循 styled-components 主题(看 src/theme.ts)。

十五、避坑

  1. 不要让 AI 直接装新依赖:每加一个 package 自己审一遍
  2. 不要让 AI 改 build 配置:高阶魔法,错了不易发现
  3. 可访问性别忘:让 AI 加 ARIA、focus management
  4. SSR / hydration 错乱:让 AI 复查 use of windowdocument、Date.now() 等

十六、相关阅读

需要给前端工作流配一个稳定 base_url?在 YoTradeApi 注册 创建独立 API Key 接入各个工具即可。