| name | frontend-patterns |
| description | 前端开发模式技能。React 组件设计、状态管理、性能优化、可访问性最佳实践。 |
| metadata | {"filePattern":["**/components/**/*.tsx","**/hooks/use*.ts","**/hooks/use*.tsx"],"bashPattern":["react|next|vite|组件"],"priority":5} |
Frontend Patterns
When to Activate
- 用户构建 React 组件(组合、props、渲染模式)
- 用户设计状态管理(useState, useReducer, Context, Zustand)
- 用户实现数据获取(SWR, React Query, Server Components)
- 用户优化性能(memoization, virtualization, code splitting)
- 用户处理表单(验证、受控输入、Zod schema)
- 用户构建可访问的 UI 组件
- 用户添加动画交互(Framer Motion, CSS transitions)
Workflow
1. 现状分析
分析现有前端代码,确认以下内容:
| 项目 | 说明 | 确认方法 |
|---|
| 框架 | React / Next.js / Remix 版本 | 确认 package.json |
| 状态管理 | useState / useReducer / Zustand / Redux / Jotai | 搜索 store 定义和 Context |
| 数据获取 | SWR / React Query / Server Components / fetch | 搜索 hooks 和 fetch 调用 |
| 样式方案 | Tailwind / CSS Modules / styled-components | 确认样式导入和配置 |
| 组件模式 | 是否使用组合模式、compound components | 分析现有组件结构 |
| 表单处理 | React Hook Form / Formik / 原生受控组件 | 搜索表单相关 hooks |
| 测试框架 | Vitest / Jest / Testing Library | 确认测试配置 |
2. 组件设计(结论先行)
先输出组件层级总览,再展开细节:
## 组件层级总览
ComponentName/
├── ComponentName.tsx # 主组件
├── ComponentName.test.tsx # 测试
├── useComponentLogic.ts # 自定义 hook(如有复杂逻辑)
├── types.ts # 类型定义
└── index.ts # 公共导出
3. 模式选择与实现
根据需求选择合适的模式:
A. 组件模式
B. 自定义 Hooks
C. 性能优化
D. 可访问性与动画
4. 设计审查
生成完成后,自动检查以下规则:
Output Format
# Frontend Pattern: {模式名称}
## 组件层级
{组件结构总览}
## 实现代码
{组件/hook 代码生成}
## 使用示例
{用法示例}
## 测试
{测试代码}
## 设计审查
{审查结果清单,标记通过/未通过}