Decoders: 用于 TypeScript 和 Flow 的类型安全数据验证库

Decoders 是一个健壮且经过实战检验的验证库,专为 TypeScript 和 Flow 设计,用于确保输入数据的类型安全。其 API 设计灵感源于 Elm 语言的 JSON 解码器。

在使用 Flow 或 TypeScript 对 JavaScript 代码进行静态类型检查时,来自程序外部边界的数据实际上是无类型的,因此也是不安全的。Decoders 可以帮助开发者验证这些数据并确保其符合预期的结构。

例如,假设您的应用程序需要处理 HTTP 请求中包含的点列表数据:

{ 
  "points" : [ 
    { "x" : 1 , "y" : 2 }, 
    { "x" : 3 , "y" : 4 } 
  ] 
}

为了正确解码此数据,您需要预先定义 Flow 中预期的结构,并使用 Decoders 在运行时验证接收到的数据是否符合该结构。

type Point = { x: number, y: number };
type Payload = { points: Point[] };
zip 文件大小:204.97KB