类验证器忽略 Nest js 中 DTO 的嵌套对象

问题描述 投票:0回答:1
export class ClaimData {
  @IsString()
  @IsDefined()
  readonly network: string;

  @IsString()
  @IsDefined()
  readonly totalSupply: number;
}

export class UpdatePullStateDTO {
  @IsString()
  @IsDefined()
  @IsEnum(PullStates)
  readonly state: PullStates;

  @ValidateNested()
  @IsNotEmpty()
  @Type(() => ClaimData)
  @IsOptional()
  claimData?: ClaimData;
}

类验证器忽略claimData请求主体。

我在 Postman 中使用以下正文输入这样的请求:

{
     "state": "completed",
     "claimData": {}
}

他错过了它,尽管他应该检查 ClaimData 中的字段。

我在互联网上阅读了与此有关的问题,但尚未找到解决方案。即使添加@ValidateNested和@Type也没有帮助。

typescript nestjs dto class-validator class-transformer
1个回答
0
投票

如果您遇到此问题,请检查您的验证管道,也许它缺少此错误,我确定我不是第一个或最后一个遇到此问题的人。

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