Почему plainToClass не генерирует недопустимые типы ввода - PullRequest
0 голосов
/ 20 января 2020

Пример:

class Test {
  @IsString()
  readonly table!: string;
}
// note, that we call it with a completely wrong type: string instead of JSON-object
const result = plainToClass(Test, 'not a class');

Тогда result - это строка ввода 'not a class'!

Я бы ожидал plainToClass до:

  • вернуть экземпляр типа Test, где все свойства остаются неопределенными, или
  • , сгенерировать исключение

Это ошибка или я что-то упустил?

I также не нашел параметр , чтобы сделать эту работу, как ожидалось.

Обходным решением сейчас является явная проверка типов и добавление моего собственного кода:

if (!(result instanceof Test) throw ...;

с использованием класс-трансформер 0.2.3

...