什么是 Zod
Zod 是一个 TypeScript 优先的模式声明和验证库。我使用术语 "模式" 来广义地指任何数据类型,从简单的 字符串
到复杂的嵌套对象。
Zod 围绕尽可能友好的开发体验而设计。其目的是消除重复的类型声明。使用 Zod,你只需声明 一次 验证器,Zod 就会自动推断出静态 TypeScript 类型。将简单类型组合成复杂的数据结构非常容易。
主要特点
- 零依赖
- 适用于 Node.js 和所有现代浏览器
- 小巧: 压缩后仅 8kb
- 不可变: 方法 (如
.optional()
) 返回一个新的实例 - 简洁的、可链式调用的接口
- 函数式方法: 解析,不验证
- 也可用于纯 JavaScript! 你不需要使用 TypeScript。
安装
bash
npm install zod
基本用法
ts
import { z } from "zod";
// 创建一个字符串的模式
const mySchema = z.string();
// 解析
mySchema.parse("tuna"); // => "tuna"
mySchema.parse(12); // => throws ZodError
// "安全"解析(如果验证失败不抛出错误)
mySchema.safeParse("tuna"); // => { success: true; data: "tuna" }
mySchema.safeParse(12); // => { success: false; error: ZodError }