← 返回文章列表
技术

TypeScript 工具类型完全指南

2025年2月22日9 分钟阅读
# TypeScript# 类型系统

为什么需要工具类型

类型系统的价值不在于约束,而在于表达。工具类型让我们能用「已有类型」推导出「需要的类型」,避免重复定义,保持单一数据源。

最常用的六个

  • Partial —— 所有字段变可选
  • Required —— 所有字段变必填
  • Pick —— 只保留指定字段
  • Omit —— 排除指定字段
  • Record —— 构造键值映射
  • ReturnType —— 提取函数返回类型
type CreatePostInput = Omit<Post, 'slug' | 'date' | 'readingTime'>
type PostPreview = Pick<Post, 'slug' | 'title' | 'excerpt' | 'category'>
type PostMap = Record<string, Post>

组合才是精髓

工具类型的真正威力在于组合。Partial> 表示「只包含 K 字段,且全部可选」,这种组合在表单类型定义中极为常见。

自定义工具类型

当内置类型不够用时,可以用条件类型和映射类型自己动手。一旦掌握 infer 关键字,就打开了类型编程的大门。

← 返回文章列表

— xiaoqianshuo