Mam następującą klasę w TypeScript:
class CallbackTest
{
public myCallback;
public doWork(): void
{
//doing some work...
this.myCallback(); //calling callback
}
}
Używam klasy w ten sposób:
var test = new CallbackTest();
test.myCallback = () => alert("done");
test.doWork();
Kod działa, więc wyświetla okno komunikatu zgodnie z oczekiwaniami.
Moje pytanie brzmi: Czy jest jakiś typ, który mogę podać w polu mojej klasy myCallback
? Obecnie pole publiczne myCallback
jest typu any
pokazanego powyżej. Jak mogę zdefiniować sygnaturę metody wywołania zwrotnego? Czy mogę po prostu ustawić typ na rodzaj oddzwaniania? Czy mogę nic z tego zrobić? Czy muszę używać any
(niejawne / jawne)?
Próbowałem czegoś takiego, ale nie zadziałało (błąd kompilacji):
public myCallback: ();
// or:
public myCallback: function;
Nie mogłem znaleźć żadnego wyjaśnienia tego w Internecie, więc mam nadzieję, że możesz mi pomóc.