将属性分配给另一个 Dto

Assign Attribute to another Dto

我正在做一个 nestjs 项目,我想知道我是否可以将一个值属性分配给另一个 Dto,以解释更多。

情况是我想将 idData 分配给 IsUniqueValidator 中的 id。

我试过这段代码,但它 returns 未定义 :

export class UpdateCompanyDto {

public idData  ;

  @IsNotEmpty()
  @Validate(IsUniqueValidator, 
    [ { table: "company", column: "name",isNumber : false,id: this.idData ,columnid : "id"   }] )
  companyname: string;

结果:

    {
  table: 'company',
  column: 'name',
  isNumber: false,
  id: undefined,
  columnid: 'id'
}

感谢您的帮助。

不需要赋值,在handler中可以找到

validate(value: any, validationArguments?: ValidationArguments) {
  console.log(validationArguments.object.idData);
}
export interface ValidationArguments {
    value: any;
    constraints: any[];
    targetName: string;
    object: Object; // <- that's what you need
    property: string;
}