类型参数的可选参数?

时间:2016-03-28 22:43:15

标签: typescript

我的申请中定义了以下内容:

export interface ICallback<TReturnType> {
    (): TReturnType;
}

export interface ICallbackWithParam<TReturnType, TParamType> {
    (param: TParamType): TReturnType;
}

export interface ICallbackWithTwoParams<TReturnType, TParamOneType, TParamTwoType> {
    (paramOne: TParamOneType, paramTwo: TParamTwoType): TReturnType;
}

命名感觉在这里。实际上这些都是我的ICallback接口。必须通过参数数量命名它们似乎.. off。

我可以这样继续使用它们,每当我在回调中需要更多参数时添加一个新的。但我想我会问TypeScript中是否有更好的方法。

可选类型参数是一种方式,但我的初步研究表明它们不受支持。

还有其他方法可以不像上面那样构建扩展的半冗余出口吗?

1 个答案:

答案 0 :(得分:0)

缺少代码生成,而不是现在。 TypeScript不支持可变参数泛型,尽管这是brought up before