generics - 接口(interface)中的 TypeScript 通用方法签名

标签 generics typescript

我正在尝试用一些方法定义一个接口(interface),我希望其中一个方法是通用的。

它是一个filterUnique方法,所以它应该能够过滤数字、字符串等列表。

以下不适合我:

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

有没有办法进行编译,还是我在这里的某个地方犯了概念性错误?

干杯!

最佳答案

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

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

或者像这样添加到界面中:

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

关于generics - 接口(interface)中的 TypeScript 通用方法签名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32704645/

相关文章:

C#:接口(interface)中的枚举

php - 如何使用 Typescript 发出 AJAX 请求? (使用 JSON)

javascript - TypeScript:获取位于任意路径上的cookie

typescript - Typescript 中的类方法

swift - 高阶函数赋值

java - 在 Java 中使用 '?' 关键字避免在 List & Map 中使用非常长的类型参数

javascript - 如何使用 Angular 中其他 http 服务的输出来调用组件中的 http get 服务?

angular - 在组件文件中导入 FormsModule 和 ReactiveFormsModule

c# - 将类型作为参数传递给属性

swift - 带有泛型参数的复杂 Swift 闭包