如何在Zod中获取min()、max()内部的值?

cedebl8k  于 2022-09-21  发布在  React
关注(0)|答案(1)|浏览(101)

我有以下架构。

const schema = z.object({
 name: z.string().min(1)
})

在Zod中有没有办法获得以分钟为单位存储的值?

const minValue = schema.shape...? // should be 1
4nkexdtk

4nkexdtk1#

是的,在稍微查看一下之后,有一个隐藏的_def字段,您可能需要//@ts-ignore

const minValue = schema.shape.name._def.checks[0].value;

如果您有多张支票,您可以找到您想要的那张:

const minValue = schema.shape.name._def.checks.find(({ kind }) => kind === "min").value;

请注意,如果未找到此类检查,find将返回undefined

相关问题