238 votes

Définition du type de callback TypeScript

J'ai la classe suivante en TypeScript :

class CallbackTest
{
    public myCallback;

    public doWork(): void
    {
        //doing some work...
        this.myCallback(); //calling callback
    }
}

J'utilise la classe comme ceci :

var test = new CallbackTest();
test.myCallback = () => alert("done");
test.doWork();

Le code fonctionne, et il affiche une boîte de message comme prévu.

Ma question est la suivante : existe-t-il un type que je peux fournir pour mon champ de classe ? myCallback ? Pour l'instant, le domaine public myCallback est de type any comme indiqué ci-dessus. Comment puis-je définir la signature de la méthode de la callback ? Ou puis-je simplement définir le type à une sorte de callback-type ? Ou encore, ne puis-je faire aucune de ces choses ? Dois-je utiliser any (implicite/explicite) ?

J'ai essayé quelque chose comme ça, mais cela n'a pas fonctionné (erreur de compilation) :

public myCallback: ();
// or:
public myCallback: function;

Je n'ai pas trouvé d'explication à ce sujet en ligne, alors j'espère que vous pourrez m'aider.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X