TypeScript Подпись общего метода в интерфейсе
Я пытаюсь определить интерфейс с несколькими методами, и я хотел бы, чтобы один из методов был общим.
Это метод 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>;
}