接口中的TypeScript通用方法签名

时间:2015-09-21 21:12:23

标签: generics typescript

我试图用几种方法定义一个接口,我希望其中一种方法是通用的。

这是filterUnique方法,因此它应该能够过滤数字,字符串等列表。

以下内容无法为我编译:

export interface IGenericServices {
    filterUnique(array: Array<T>): Array<T>;
}

有没有办法进行编译,或者我在这里某处犯了概念性错误?

干杯!

1 个答案:

答案 0 :(得分:21)

尚未定义T类型。它需要作为类型变量添加到方法中,如:

filterUnique<T>(array: Array<T>): Array<T>;

或添加到界面中:

export interface IGenericServices<T> {
    filterUnique(array: Array<T>): Array<T>;
}