我尝试在实例化时间将类的每个属性设置为空字符串。但是要获取所有属性,我需要获取在构造函数中实例化的“类”。任何帮助将不胜感激!
我使用打字稿3.1
这是我用来获取类的所有属性的函数。
Export class Base {
id: String;
...
constructor() {
getAllProperties(MyClass)
// I would like to have MyClass to be dynamique
}
}
function getAllProps(cls: new (...args: any[]) => any): any[] {
// return a list of all Class properties.
}
我也尝试使用Reflect.metadata API,但如果没有该类,将无法获得良好的结果。
答案 0 :(得分:0)
父构造函数在子构造函数之前被调用,因此它将不起作用。您可以创建函数并在super()函数之后调用它
// Parent
class A1 {
constructor() {
}
protected init() {
//Get properties here
console.log(this);
}
}
// Child
class A2 extends A1 {
public a;
public b;
constructor() {
super();
this.a = 1;
this.b = 2;
//code here...
this.init();
}
}