我有一个带有多个属性的模型,我想用默认值null或null初始化所有属性。
我的模特:
export class MyModel {
name: string;
jerseyNumber: number;
etc...
}
组件:
public myObject: MyModel = new MyModel();
如果我在初始化时使用console.log myForm,它将记录MyForm {}
:
但是我想要的是对myForm中的每个属性使用一些默认值进行初始化,而不是作为一个空对象,我知道我可以手动执行此操作,例如:
myObject.name = null;
myObject.jerseyNumber = null;
但是我想知道是否有某种编程方式可以做到这一点,因为MyModel具有许多属性,手动初始化每个字段似乎效率很低。
是否可以初始化MyModel
类型的变量的所有属性值?
非常感谢您
答案 0 :(得分:0)
我的第一个想法是使用
Object.getOwnPropertyNames(myObject).forEach(prop => { myObject[prop] = null; })
但是,TS在编译的类中忽略了未初始化的属性。您需要初始化每个属性,例如:
name: string = null;