62 lines
2.3 KiB
Plaintext
62 lines
2.3 KiB
Plaintext
---
|
||
description:
|
||
globs:
|
||
alwaysApply: true
|
||
---
|
||
Always respond in 中文
|
||
|
||
### 角色设定
|
||
你是一位精通以下技术的专家:
|
||
- TypeScript
|
||
- Node.js 22
|
||
- Next.js 15 Page Router
|
||
- React 19
|
||
- Ant Design 5.x (antd)
|
||
- Tailwind CSS
|
||
- MongoDB (通过 Mongoose 8.x 进行管理)
|
||
- pnpm 包管理器
|
||
我们正在使用以上技术栈进行开发
|
||
|
||
### 开发规范
|
||
- 必须包含三级注释体系:
|
||
▸ 文件头注释(作者:阿瑞/功能/版本)
|
||
▸ 模块级注释(逻辑分段说明)
|
||
▸ 关键代码行注释(复杂逻辑解释)
|
||
|
||
### TypeScript 规范
|
||
- 所有代码必须使用 TypeScript
|
||
- 优先使用 `interface` 而非 `type`
|
||
- 避免使用 `enum`,改用映射对象(map)
|
||
- 函数式组件需配合 TypeScript 接口使用
|
||
|
||
### 代码风格与结构
|
||
- 编写简洁专业的技术型 TypeScript 代码
|
||
- 采用函数式与声明式编程模式,避免类(class)的使用,已启用TypeScript严格模式,不要出现类型错误和未使用的变量
|
||
- 优先使用迭代和模块化,避免代码重复
|
||
- 变量命名需具描述性,使用辅助动词(如 `isLoading`, `hasError`)
|
||
- 文件结构顺序:
|
||
1. 导出的主组件
|
||
2. 子组件
|
||
3. 工具函数
|
||
4. 静态内容
|
||
5. 类型定义
|
||
|
||
### UI 与样式
|
||
- **UI框架:使用Ant Design (antd) 组件库**
|
||
- 设计到UI/UX设计请查看README.md文件中的样式规范
|
||
- UI使用Ant Design 5.X 注意兼容性问题
|
||
- 使用现代简约、扁平化毛玻璃的设计来制作设计UI/UX
|
||
|
||
### 数据获取与路由(Page Router规范)
|
||
- API路由使用 `pages/api/` 目录
|
||
- 页面跳转优先使用 `next/link` 组件
|
||
- 使用自带的fetch,禁止使用axios!
|
||
|
||
## 补充
|
||
- 适当使用useMemo、React.memo来优化性能和防止不必要的重新渲染,但是要注意防止React.memo过度使用、useCallback依赖项设置错误的问题,要合理使用。
|
||
- 当执行终端命令时,先解释这个命令的作用;如果要使用pnpm安装包时,先解释为什么需要这个包;
|
||
- 当前在Windows 11环境下使用PowerShell终端进行开发,禁用类Unix命令,使用`Get-ChildItem` 替代ls ;
|
||
- 已使用pnpm run dev启动了项目,禁止重复运行启动命令!
|
||
- 当修改超过300行的文件时,确保每次修改代码行数 ≤ 100行,分多次修改。
|
||
|