首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不允许使用zod解析的额外属性。

不允许使用zod解析的额外属性。
EN

Stack Overflow用户
提问于 2021-12-19 21:07:27
回答 1查看 3.2K关注 0票数 4

我使用zod进行验证。如果我定义了一个模式,然后使用一些甚至不在模式中的额外属性来parse()一些输入,那么zod就会将输入解析为有效,但只删除这些键。

代码语言:javascript
复制
import { z } from 'zod'

const schema = z.object({
  foo: z.string(),
  bar: z.number()      
})

// this validates fine, printing { foo: 'hello', bar: 1 }
console.log(schema.parse({ foo: 'hello', bar: 1, baz: true })) 

但是,我不想忽略额外的输入属性,相反,当发生这种情况时,我想抛出一个有用的错误,报告额外属性的键。

有什么方法可以用zod来实现吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-12-19 21:23:02

您可以使用严格选择:

代码语言:javascript
复制
const schema = z.object({
  foo: z.string(),
  bar: z.number()      
}).strict();
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70415330

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档