我在使用TypeScript时遇到问题。让我们先谈一些背景。
interface TestInterface {
funcA(b: number): void;
}
class TestClass implements TestInterface {
public funcA(b) {
console.log(this.a);
}
}
TypeScript确定b
中的funcA
是any
,甚至TestClass
实现TestInterface
。
在TypeScript中,我们可以为函数创建一个接口。
interface FuncAInterface {
(b: number): void;
}
但是,在搜索之后,发现的唯一方法就是将其应用于箭头函数或const函数。
class TestClass {
public funcC: FuncAInterface = function(b) {
console.log(b);
};
public funcD: FuncAInterface = b => {
console.log(b);
};
}
在funcC
中,我们无法访问this
,因为
'this'隐式具有类型'any',因为它没有类型注释。
我们可以在this
中访问funcD
。
但是,funcC
和funcD
都不能访问子类中的super
。
因此,问题是,有可能在能够访问super
的同时将接口应用于典型的类函数。