Ich habe die folgende Klasse in TypeScript:
class CallbackTest
{
public myCallback;
public doWork(): void
{
//doing some work...
this.myCallback(); //calling callback
}
}
Ich benutze die Klasse wie folgt:
var test = new CallbackTest();
test.myCallback = () => alert("done");
test.doWork();
Der Code funktioniert und zeigt erwartungsgemäß ein Meldungsfeld an.
Meine Frage ist: Gibt es einen Typ, den ich für mein Klassenfeld bereitstellen kann myCallback
? Im Moment ist das öffentliche Feld myCallback
vom Typ any
wie oben gezeigt. Wie kann ich die Methodensignatur des Rückrufs definieren? Oder kann ich den Typ einfach auf einen Rückruftyp einstellen? Oder kann ich beides tun? Muss ich verwenden any
(implizit / explizit)?
Ich habe so etwas versucht, aber es hat nicht funktioniert (Fehler beim Kompilieren):
public myCallback: ();
// or:
public myCallback: function;
Ich konnte online keine Erklärung dafür finden, also hoffe ich, dass Sie mir helfen können.