Как использовать проверку в NestJs с рендерингом HTML? - PullRequest
2 голосов
/ 06 марта 2019

NestJS использует проверку с проверочными каналами и

@UsePipes(ValidationPipe)

Если это не удается, выдается исключение. Это хорошо для API REST, которые возвращают JSON.

Как проверить параметры при использовании рендеринга HTML и вернуть

{ errors: ['First error'] }

в шаблон hbs?

1 Ответ

2 голосов
/ 06 марта 2019

Вы можете создать Interceptor, который преобразует ошибку проверки в ответ об ошибке:

@Injectable()
export class ErrorsInterceptor implements NestInterceptor {
  intercept(
    context: ExecutionContext,
    call$: Observable<any>,
  ): Observable<any> {
    return call$.pipe(
        // Here you can map (or rethrow) errors
        catchError(err => ({errors: [err.message]}),
      ),
    );
  }
}

Вы можете использовать его, добавив @UseInterceptors(ErrorsInterceptor) к своему контроллеру или его методам.

...