我知道我以前问过这个问题,但我找不到那个问题,也记不起答案了。
我有一个对象,其中有几种方法具有相同的参数列表:
{
foo: function(){
return []; // (return Array<T>)
},
bar: function(){
return []; // (return Array<T>)
},
baz: function(){
return []; // (return Array<T>)
}
}
当我声明这个对象的接口时:
interface SomeObj {
foo: Function,
bar: Function,
baz: Function
}
但我想为这些函数声明一个类型,类似于这样:
type TestSuiteGetterFn <T>() => Array<T>;
interface SomeObj {
foo: TestSuiteGetterFn,
bar: TestSuiteGetterFn,
baz: TestSuiteGetterFn
}
但是这段代码无法编译。
我很少在谷歌上遇到像这样困难的问题。