Ho la seguente classe in TypeScript:
class CallbackTest
{
public myCallback;
public doWork(): void
{
//doing some work...
this.myCallback(); //calling callback
}
}
Sto usando la classe in questo modo:
var test = new CallbackTest();
test.myCallback = () => alert("done");
test.doWork();
Il codice funziona, quindi visualizza una finestra di messaggio come previsto.
La mia domanda è: esiste un tipo che posso fornire per il mio campo di classe myCallback? In questo momento, il campo pubblico myCallbackè di tipo anycome mostrato sopra. Come posso definire la firma del metodo del callback? O posso semplicemente impostare il tipo su un tipo di callback-type? O posso fare il nether di questi? Devo usare any(implicito / esplicito)?
Ho provato qualcosa del genere, ma non ha funzionato (errore di compilazione):
public myCallback: ();
// or:
public myCallback: function;
Non sono riuscito a trovare alcuna spiegazione online, quindi spero che tu mi possa aiutare.