如何从zod对象模式获取子模式

问题描述 投票:0回答:1

我有这样的架构:

const schema = z.object({
  name: z.string(),
  email: z.string()
})

稍后在代码中,我只想验证

email
。是否有可能以某种方式获得像这样的
email
模式:
schema.getSubschema("email").safeParse(...)
?我知道我可以单独定义电子邮件的架构,但从对象架构中获取它会更方便。

react-hook-form zod
1个回答
0
投票

在这种情况下您可以使用

.shape

const schema = z.object({
  name: z.string(),
  email: z.string()
});
let email = '[email protected]';

console.log(schema.shape.email.safeParse(email))

您可以了解更多这里

© www.soinside.com 2019 - 2024. All rights reserved.