当我有一个扩展基类的类时,如何获得派生类的名称(在基类中)?
我在基类中有一个方法,由派生类调用;我想知道哪个实例正在调用该方法。使用 this.constructor.name 时,我拥有当前的基类,而不是派生的基类。
角度4/5
谢谢。
[更新]
答案 0 :(得分:1)
您需要使用构造函数类的名称属性。
class Base {
public process(value: any) {
alert(this.constructor["name"]); // alerts 'Derived' in this example
}
}
class Derived extends Base {
public process(value: any) {
super.process(value); // use super to call methods on the base class
}
}
(new Derived).process('someValue');