Как определить возвращаемый тип void для функции в интерфейсе Typescript?
у меня есть эта функция:
network = (action): void =>{
if (action) {
this.action = action;
this.net = true;
this.netd = true;
} else {
this.action = null;
this.net = false;
this.netd = false;
}
}
Я попытался определить интерфейс, но он не работает для меня:
interface IStateService {
network: (action: string): void;
}
Я получаю сообщение с надписью "неожиданный токен" на void
2 ответов
у вас есть два варианта синтаксиса для функционального элемента интерфейса, которые эквивалентны здесь:
interface IStateService {
network: (action: string) => void;
}
или
interface IStateService {
network(action: string): void;
}
это близко к синтаксису "Type literal", но для этого требуются фигурные скобки:
interface IStateService {
network: { (action: string): void; }
}
это полный синтаксис и позволяет определять перегрузки, например:
interface IStateService {
network: {
(): string;
(action: string): void;
}
}