从 GraphQL 生成 TypeScript 类型

粘贴 SDL 格式的 GraphQL schema(type、input、enum 块),自动生成对应的 TypeScript 接口和类型,包含标量转换并支持可选字段。

示例:

工作原理

此工具通过正则表达式识别 schema 中的每个 type、input 或 enum 块,然后将每个字段转换为 TypeScript 属性:标准 GraphQL 标量(ID、String、Int、Float、Boolean)会映射为对应的 TypeScript 类型,自定义类型则原样保留,作为对其他已生成接口的引用。

GraphQL 的可空性如何转换?

在 GraphQL 中,字段默认可为空;只有后缀 ! 才会使其成为必填。此工具把这条规则转换到 TypeScript:不带 ! 的字段会变成可选属性(字段?: 类型),带 ! 的字段则保持必填。

GraphQL 列表能正确转换吗?

可以:[String!]! 会变成 string[](由必填字符串组成的必填数组),而 [String] 会变成可能不存在的可选数组 string[],转换时会遵循源类型中感叹号的位置。

隐私:您的 GraphQL schema 通过正则表达式在本地分析,绝不会离开您的浏览器。