2010-02-19 4 views
3

Supposons que j'ai une classe comme ceci:Nouveau avec JSDoc. La meilleure façon de documenter un gestionnaire d'événements dans JSDoc?

function myClass(q) { 
    this.someFunction = function(e) { 
     console.log("Click event"); 
    }; 

    jQuery(q).click(this.someFunction); 
} 

est-il un moyen d'indiquer que JSDoc someFunction est non seulement une fonction qui doit être invoquée directement, mais plutôt est un gestionnaire d'événements? Je vois la balise @event mais si je comprends bien, c'est plus pour documenter une fonction dans ma classe que je considère comme un évènement (quelque chose que le code client enregistrerait aussi et que ma classe se déclenchera) et non un gestionnaire d'évènement fonction ?

Merci

Répondre

0

Non, il n'y a aucun moyen de documenter un gestionnaire d'événements. Donc, la meilleure façon est de le documenter comme une fonction normale, en écrivant peut-être dans sa description en gras ou en majuscules un "EVENT HANDLER".

Vous l'avez probablement déjà fait maintenant, mais juste au cas où: vous pouvez l'écrire en gras en enroulant simplement le texte dans les balises html <strong></strong>.

+1

Cette réponse devrait être supprimée. –

+1

@Chris Marisic: Je suis d'accord, mais il ne me laisse pas le supprimer parce que c'est la réponse acceptée. –

+0

@stackoverflow ಠ_ಠ –

15

Le mot-clé est @listens

Exemple d'utilisation:

/** 
* Outputs the event that happened 
* 
* @param {MyEvent} e - The observable event. 
* @listens MyEvent 
*/ 
function myEventLogger(e) { 
    console.log(e); 
} 

Le corollaire est le mot-clé @fires pour élever l'événement.

+1

'@ listens' est maintenant une [fonctionnalité documentée de JSDoc 3] (http://usejsdoc.org/tags-listens.html). –