1 node.js typescript class-validator nestjs class-transformer
我有一个 dto 文件:
export class UpdateUserDto {
@IsUUID()
public readonly uuid: string;
@IsObject()
@Type(() => UserModelDto)
public readonly dataToUpdate: UserModelDto;
}
Run Code Online (Sandbox Code Playgroud)
问题是,@Type() 装饰器似乎不起作用。我的 UserModelDto 看起来像这样:
export class UserModelDto {
@IsUUID()
@IsOptional()
public uuid?: string;
@IsEmail()
@IsOptional()
public email?: string;
@IsString()
@IsOptional()
public password?: string;
@IsJWT()
@IsOptional()
public refreshToken?: string;
}
Run Code Online (Sandbox Code Playgroud)
当我向控制器发送请求时,验证对字段不起作用,dataToUpdate但对它uuid有效。我尝试了很多方法但结果仍然相同。
您需要在选项{ transform: true }中启用ValidationPipe:
app.useGlobalPipes(
new ValidationPipe({
transform: true,
}),
);
Run Code Online (Sandbox Code Playgroud)
参考: https: //docs.nestjs.com/techniques/validation#transform-payload-objects
| 归档时间: |
|
| 查看次数: |
6391 次 |
| 最近记录: |