SuperAPI AI 工具集

typescript-best-practices

编程与开发

查看项目

更新于 10-16 03:46

技能介绍

用途:在阅读或编辑任意 .ts 或 .tsx 文件时应用 TypeScript 最佳实践,先在类型系统纪律这一原则性技能之上,将其落到具体 TypeScript 语法。

主要能力(按资料列出的规则):

  1. 判别联合:用 kind 字面量判别字段对变体建模,使不可能状态无法表示,不用可选字段的松散结构。
  2. 品牌类型:用 & { readonly __brand: "X" } 对原始类型打品牌,防止混用,在创建处校验一次。
  3. 用 unknown 而非 any:外部数据是 unknown;any 会在其触及的范围内关闭类型检查。
  4. 不用 as 强制转换:每个 as 都可能是运行时崩溃的隐患,只在校验后转换。
  5. 收窄层级:判别字段 switch > in 运算符 > typeof/instanceof > 自定义类型守卫 > as。
  6. 类型守卫:必须真正验证其断言;说谎的守卫比 as 更糟,命名用 isX 或 hasX。
  7. 穷尽检查:在 default 分支内写 inline const _exhaustive: never = x; 以便新增变体时编译器报错。
  8. 用 satisfies 而非 as:校验值而不拓宽字面量类型。
  9. 边界校验:数据进入处校验,内部信任类型。
  10. 由 schema 派生类型:先考虑 Pick/Omit/Parameters/ReturnType/Awaited/typeof 再声明新 interface。
  11. 对象参数:传对象而非位置参数,让参数顺序自文档化;热路径(逐帧渲染、分词器、解析器)可跳过。

用法与限制:资料未提供安装命令或具体调用方式,仅说明在读写 .ts/.tsx 时使用,并给出参考文件 references/patterns.md 作为示例。未提供收费、平台、效果等其它信息。