У меня есть следующий класс в TypeScript:
class CallbackTest
{
public myCallback;
public doWork(): void
{
//doing some work...
this.myCallback(); //calling callback
}
}
Я использую класс следующим образом:
var test = new CallbackTest();
test.myCallback = () => alert("done");
test.doWork();
Код работает, поэтому он отображает окно сообщений, как ожидалось.
Мой вопрос: есть ли какой-либо тип, который я могу предоставить для своего поля класса myCallback
? Сейчас публичное поле myCallback
имеет тип any
, как показано выше. Как определить сигнатуру метода обратного вызова? Или я могу просто задать тип типа обратного вызова? Или я могу сделать это? Должен ли я использовать any
(неявный/явный)?
Я пробовал что-то вроде этого, но это не сработало (ошибка времени компиляции):
public myCallback: ();
// or:
public myCallback: function;
Я не мог найти никаких объяснений этому онлайн, поэтому надеюсь, что вы сможете мне помочь.