Как получить свойства класса с пустым конструктором, используя Typescript в Angular 7 - PullRequest
0 голосов
/ 22 ноября 2018

Я пытаюсь динамически связать группу с моим классом.Но я не могу сделать это с "getRawValue () как MyClass", потому что у меня есть компонент "автозаполнение" из primeng, где у него есть другой объект внутри.Пример: результат от того, когда получить RawValue.

{
 field1: value;
 field2: value;
 autocomplete: {filed3: value, anotherfield: value}
}

Пример: класс для привязки

export MyClass {
   field1: number;
   field2: string;
   field3: number;
}

Тогда я подумал, чтобы получить свойства из "MyClass" и сравнить с Raw Value, но еслиу моего класса нет конструктора, инициализирующего свойства, которые я не могу получить их имена.Я также не знаю, может ли это быть лучшим решением.Я использую Object.getOwnPropertyNames(new MyClass()); Цель состоит в том, чтобы использовать в любом классе в моем проекте.

1 Ответ

0 голосов
/ 22 ноября 2018

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

export class MyClass {
  constructor(
     public field1: number = 0;
     public field2: string = '';
     public field3: number = 0;
  ) {}
}

Тогда вы получите значения

Object.getOwnPropertyNames(new MyClass());
...