130 words
1 minutes
闪电笔记memos-KuXbqmnJqdvuzDyvL3ZAFu
zod 有一个 z.input 很妙
这种需求挺常见的:在 zod 中,我希望给用户提供一个可选参数的默认值。比如 type Info={name:string, age?:number}
,用户如果不填写 age,默认值是 18,
最终 zod.parse 的结果应该是完整的,对 ts 用户的提示应该是可选的,研究了老半天没整明白,问 ai 明白了,是有这么一个方法的,不太起眼: z.input
输入值类型
cosnt schema = {
age: z.number().optional().default(18)
}
type IOptions = z.input<typeof schema>
z.output<<typeof schema> = z.infer<typeof schema>
闪电笔记memos-KuXbqmnJqdvuzDyvL3ZAFu
https://ijust.cc/posts/KuXbqmnJqdvuzDyvL3ZAFu/