const schema = z.object({
name: z.string().optional(), // nameフィールドはstringかundefined
});
const schema = z.object({
name: z.string().nullable(), // nameフィールドはstringかnull
});
const schema = z.object({
name: z.string().nullish(), // nameフィールドはstringかnullかundefined
});
その他スキーマについては 忘れそうなzodスキーマメモ - Qiita
import * as z from "zod";
z.number(); // 単純な数値( NaNとBigInt型は含まない )
z.number().min(5); // 5以上の数値( >= 5 )
z.number().max(5); // 5以下の数値( <= 5 )
z.number().int(); // 整数型の数値
z.number().positive(); // 0よりも大きい数値( > 0 )
z.number().nonnegative(); // 0以上の数値( >= 0 )
z.number().negative(); // 0より小さい数値( < 0 )
z.number().nonpositive(); // 0以下の数値( <= 0 )