abstract class MyClass() {
protected static foo: Array<number>;
protected static doWorkOnFoo(): void {
let x: number = 0;
for (let f of | what goes here? this? self?|.foo) {
x = x + foo;
}
}
}
在实现抽象类,并希望派生类具有静态属性和对这些属性进行操作的静态方法时,如何访问抽象类中的那些,以便派生类可以只使用该方法?
我知道这可以通过在静态属性上设置默认值并使用 this
来解决这个问题,但这引起了我的兴趣,并且我以某种方式从TS中的抽象类访问泛型派生类 .
提前致谢!
编辑:
虽然我无法准确找到我要查找的内容(请参阅注释),但可行的解决方案是将 doWorkOnFoo()
方法的签名更改为以下内容:
protected static doWorkOnFoo(): (typeof MyClass) => void;
由于它已经是一个抽象类,它可以将派生类作为参数,然后引用派生类的静态属性 .