NestJS。 ValidationPipe 不处理复合对象

时间:2021-06-24 10:50:35

标签: node.js nestjs class-transformer

当主体由少数模型/DTO 合成时,微服务很常见,例如,我在 API 网关中接收 Foo DTO,然后将其与用户对象一起发送到微服务。就我而言,Foo DTO 中的 @Transform 装饰器不起作用。但如果 body 只是 Foo,它会起作用。

@MessagePattern(FOO)
async foo(@Body() body: { user: User, data: Foo }){
}

export class Foo {
    @Transform(val => BigInt(val.value))
    amount: bigint;
}

app.useGlobalPipes(new ValidationPipe({transform: true}));

定义了所有类型的 User 和 Foo,那么为什么 ValidationPipe 会通过这个转换?

0 个答案:

没有答案