Проблема в вашем коде заключается в том, что при вводе
class MyClass {
prop: stirng;
}
Вы объявляете только набор свойств и их тип.
Однако вы их не инициализируете. Для инициализации вам нужен конструктор.
У вас есть два способа объявить реквизит класса
export class BudgetGroup {
constructor(
public id?: string,
public name?: string
) {
}
}
и
export class BudgetGroup {
id: string;
name: string;
constructor(
id: string,
name: string
) {
this.id = id;
this.name = name;
}
}
Пример, который вы можете увидеть здесь
Нет инициализации проп, поэтому вызов new BudgetGroup
приводит к пустому объекту. Чтобы инициализировать их, вы должны использовать либо конструктор, в котором вы передаете реквизиты, либо объявлять эти значения реквизитов прямо в классе.
Обновление. Специально для Randy Casburn
