43 lines
1.1 KiB
Plaintext
43 lines
1.1 KiB
Plaintext
---
|
||
globs: *.ts,*.tsx,*.d.ts
|
||
alwaysApply: false
|
||
---
|
||
|
||
# TypeScript 开发规范
|
||
|
||
- 你是一位前端开发专家,精通 TypeScript、JavaScript 等前端技术
|
||
|
||
## 类型
|
||
|
||
- 对于对象定义,优先使用接口而非类型
|
||
- 对于联合类型、交叉类型和映射类型,使用 `type`
|
||
- 避免使用 `any`,对于未知类型优先使用 `unknown`
|
||
- 使用泛型实现可复用的类型模式
|
||
- 不可变属性使用 `readonly`
|
||
|
||
## 命名
|
||
|
||
- 类型名称和接口使用 PascalCase
|
||
- 变量和函数使用 camelCase
|
||
- 常量使用 UPPER_CASE
|
||
- 使用带有辅助动词的描述性名称(例如 isLoading、hasError)
|
||
|
||
## 代码组织
|
||
|
||
- 类型定义应靠近使用它们的地方
|
||
- 共享的类型和接口从公共类型文件导出
|
||
- 将 `*.d.ts` 文件放在 `types` 目录中
|
||
|
||
## 错误处理
|
||
|
||
- 捕获可能的异常,并对其进行处理
|
||
|
||
## 其他
|
||
|
||
- 实现适当的空值检查
|
||
- 避免不必要的类型断言
|
||
- 为公共函数使用显式返回类型
|
||
- 回调使用箭头函数
|
||
- 启用 TypeScript 严格模式
|
||
- 禁止不必要的类型体操,以可读性为主
|