我有一个 NestJS 项目,其中我同时使用类验证器和类转换器,并且我需要在类验证器引发错误之前执行类转换器。
给定以下课程:
export class CreateProfileDto {
@IsString()
@Expose({ name: 'name' })
profileName!: string;
@IsBoolean()
@Expose({ name: 'active'})
profileActive!: boolean;
}
我需要使用属性名称而不是属性 profileName 来公开错误,其他属性也是如此。
有什么直接的想法来管理这个吗?不能要求前端向我发送具有不同名称的属性,这就是我需要调整它们的原因。
我想通过管道这样做,但在错误爆发之前无法使用它。
当前错误格式:
{
"statusCode": 400,
"error": "Bad Request",
"message": [
{
"target": {
"profileName": 1
},
"value": 1,
"property": "profileName",
"children": [],
"constraints": {
"isString": "profileName must be a string"
}
}
]
}
所需的错误格式:
{
"statusCode": 400,
"error": "Bad Request",
"message": [
{
"target": {
"name": 1
},
"value": 1,
"property": "name",
"children": [],
"constraints": {
"isString": "name must be a string"
}
}
]
}