问题标签 [class-validator]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3551 浏览

node.js - Node Js:使用类验证器验证空数组

如何使用类验证器检查数组是否为空。
下面给出的是我的结构。我想检查cartId是否为空。

0 投票
1 回答
9260 浏览

node.js - 类验证器不区分大小写的枚举验证?

我有这样的数字:

和 create.user.dto 这样

现在,如果我只发布角色大写('ADMIN','USER')或'BLOGGER',角色验证不会失败。

如何使类验证器不区分大小写?我的意思是,验证“管理员”“aDmIn”也是如此。

0 投票
1 回答
5220 浏览

node.js - Class-Validator node.js 提供自定义错误

我创建了一个自定义验证器约束和注释,用于检查具有给定属性的实体是否已经存在,这是代码

一切正常,但是当验证失败时我会收到此响应

我希望错误是 Conflict Exception=> statusCode 409,我该如何实现呢?

0 投票
1 回答
1086 浏览

typescript - 验证类:如果存在字段,则验证失败

我有一个示例类(https://github.com/typestack/class-validator#validation-messages)。我创建了一个应该执行正常验证的函数,或者,如果指定,如果title字段包含在正在验证的实例中,则执行失败的验证。

我知道当存在未列入白名单的属性时(https://github.com/typestack/class-validator#whitelisting)可能会引发错误,但我似乎无法弄清楚如何有条件地失败验证如果一个字段存在。如果不创建自定义装饰器,这甚至可能吗?

0 投票
0 回答
98 浏览

javascript - NestJS:ValidationPipe 不适用于路由@Param

我正在构建一个 NestJS 应用程序,我正在尝试使用 aValidationPipe来验证我的请求正文和查询参数。我的ValidationPipe样子是这样的(为简单起见,省略了一些代码):

另外,我有一个带有这个签名的控制器方法:

请求正文验证工作正常。我的UserManagementDto正确解析和验证。但是 id 参数的验证不能正常工作。id 参数被序列化为纯字符串(如您在打印屏幕中所见):

Id 参数转换为纯字符串而不是 UserManagementDto 的实例

UpdateParams类是这样的:

我以PUT这种方式提出请求:

ValidationPipe以框架文档提供的示例为基础。

我究竟做错了什么?谢谢您的帮助!

0 投票
3 回答
2516 浏览

typescript - 使用 class-validator 验证类中的一个字段

假设我有这个类基于文档中的示例(https://github.com/typestack/class-validator#usage

我创建了这个类的一个实例并将值分配给这些字段。

我想验证post,跳过所有字段的验证,除了title. 除了将组分配给所有字段之外,似乎没有办法做到这一点,我不想这样做。有没有办法验证这个单一的字段?

0 投票
1 回答
45 浏览

class-validator - 使字段可选,但如果设置则让它依赖于其他字段

我有一个 DTO 过滤位置。要查询一些位置,我可以提供纬度、经度和半径。这三个都是可选字段,但是当我设置其中一个时,它也需要另外两个。所以我到目前为止

有没有像这个样本的装饰器

@IsOptionalButDependsOn(['fieldFoo', 'fieldBar'])

所以这三个都是可选的,但是如果提供了其中一个,则还必须提供其他两个字段。

0 投票
1 回答
1053 浏览

typescript - 类验证器自定义

嘿伙计们,我有一个关于类验证器的问题。我已经编写了一个自定义类验证器,它检查具有属性的对象是否已经存在。这是代码

当我想用 id 获取用户时,它很有用,就像这样。

但我认为它也可以有不同的用途,比如在尝试创建用户时检查具有此类电子邮件的用户是否已经注册。这就是问题所在:当具有属性的实体存在时,此验证器返回 true,我如何(在某些情况下)获得 !validator。我的意思是当实体不存在时它会返回true?有没有办法用这个验证器来实现这一点?

0 投票
1 回答
595 浏览

typescript - 在nestjs中使用类验证器验证环境变量?

如何通过nestjs中的类验证器验证我的环境变量?官方文档中没有示例,只有joi。但是对于 DTO,您几乎可以使用类验证器,因为接口不会在运行时编译等。而且我不想在我的应用程序中使用两个不同的验证器。

0 投票
1 回答
1028 浏览

nestjs - NestJS + 类验证器,为什么错误数组是空的?

我有这堂课:

我使用验证管道作为:

它正确地进行了验证,但我每次都得到一个空的错误数组。