基本的な使い方
このページでは、スキーマの作成、データのパース、推論型の使用の基本について説明します。Zod のスキーマ API に関する完全なドキュメントについては、スキーマの定義 を参照してください。
スキーマの定義
他のことをする前に、まずスキーマを定義する必要があります。このガイドの目的のために、単純なオブジェクトスキーマを使用します。
データのパース
任意の Zod スキーマを指定して、.parse を使用して入力を検証します。有効な場合、Zod は入力の強く型付けされたディープクローンを返します。
注意 — スキーマで async refinements(リファインメント)や transforms(変換)などの非同期 API を使用している場合は、代わりに .parseAsync() メソッドを使用する必要があります。
エラー処理
検証が失敗すると、.parse() メソッドは、検証の問題に関する詳細情報を含む ZodError インスタンスをスローします。
try/catch ブロックを回避するために、.safeParse() メソッドを使用して、正常にパースされたデータまたは ZodError のいずれかを含むプレーンな結果オブジェクトを取得できます。結果の型は 判別共用体(discriminated union) なので、両方のケースを便利に処理できます。
注意 — スキーマで async refinements(リファインメント)や transforms(変換)などの非同期 API を使用している場合は、代わりに .safeParseAsync() メソッドを使用する必要があります。
型推論
Zod はスキーマ定義から静的型を推論します。z.infer<> ユーティリティを使用してこの型を抽出し、好きなように使用できます。
場合によっては、スキーマの入力型と出力型が異なることがあります。たとえば、.transform() API は入力をある型から別の型に変換できます。これらの場合、入力型と出力型を個別に抽出できます。
基本をカバーしたので、次は Schema API(スキーマ API)に飛び込みましょう。

