接口中的 TypeScript 通用方法签名
Posted
技术标签:
【中文标题】接口中的 TypeScript 通用方法签名【英文标题】:TypeScript Generic Method Signature in Interface 【发布时间】:2015-09-21 21:12:23 【问题描述】:我正在尝试使用一些方法定义一个接口,并且我希望其中一种方法是通用的。
它是一个filterUnique
方法,所以它应该能够过滤数字、字符串等列表。
以下内容不适合我:
export interface IGenericServices
filterUnique(array: Array<T>): Array<T>;
有没有办法让这个编译,或者我在这里的某个地方犯了一个概念错误?
干杯!
【问题讨论】:
【参考方案1】:T
类型尚未定义。它需要作为类型变量添加到方法中,例如:
filterUnique<T>(array: Array<T>): Array<T>;
或者添加到界面中如:
export interface IGenericServices<T>
filterUnique(array: Array<T>): Array<T>;
【讨论】:
如果对别人有帮助,你也可以为接口的方法定义一个泛型,而不需要整个接口的泛型:@ 987654324@ @williaster 如果您将其作为答案发布,您将获得我的支持,因为当我登陆此页面时,该语法正是我所寻找的。谢谢!小修正,把:
改成=>
:<T>(arg: T) => T;
以上是关于接口中的 TypeScript 通用方法签名的主要内容,如果未能解决你的问题,请参考以下文章