为了使任何模式都是可选的,我看到zod提供了两个方法:z.optial(z.string(((和z.osting((。我想知道它们之间有什么区别?在大多数情况下,我应该使用什么?
查看源代码可以发现:
const ostring = () => stringType().optional();
从自述中我们知道:
const optionalString = z.string().optional(); // string | undefined
// equivalent to
z.optional(z.string());
所以没有区别
这两种方法是相同的
CCD_ 1等是快捷键。它们在功能上等效于用z.optional()
包装普通类型或链接.optional()
。事实上,它们是使用链式.optional()
在内部实现的。