Как мы можем переопределить канал глобальной проверки в NestJs? - PullRequest
0 голосов
/ 13 июня 2019

У меня есть код, в котором я применил канал глобальной проверки в файле main.ts, например:

async function bootstrap() {
  const app = await NestFactory.create(AppModule);
  app.enableCors();
  // Enable global validation pipe
  app.useGlobalPipes(new ValidationPipe({
    whitelist: true
  }));
}

Теперь в одном из моих контроллеров я хотел пропустить некоторые свойства DTO взапрос на исправление, например,

    @Patch(':id')
    // Override the pipes
    @UsePipes(new ValidationPipe({
        skipMissingProperties: true,
    }))
    updateProject(@Param('id') accountId: string, @Body() dataToUpdate: UpdateProjectDTO) {
        return dataToUpdate;
    }

Это мой DTO:

export class UpdateProjectDTO {
    @IsNotEmpty()
    projectType: string;

    @IsNotEmpty()
    projectDescription: string;
}

Я хотел бы проигнорировать projectDescription, если он не представлен как часть запроса.Но в этом случае мой глобальный канал имеет приоритет, для которого skipMissingProperties не определен как часть его свойства.Есть ли решение переопределить глобальный канал?

...