2013-03-13 1 views
7

Je suis en train d'écrire la documentation pour une méthode JavaScript à l'aide YUIDoc. Il ressemble à:Comment documenter un paramètre « objet » d'une méthode

/** 
    Returns an instance of className 

    @method getInstance 
    @param {string} className the of the class used to create the instance 
    @param {Object} options these are options used to create the instance 
**/ 
function getInstance(className, options) { ..... } 

Maintenant, les options objet peut avoir plusieurs paramètres, comme options.id, options.single, etc.

Comment puis-je ajouter ces informations à la documentation de ce @param?

+0

Google fermeture du compilateur marquerait que comme {{id: string, simple: quel que soit}} ou {Object .} Si c'est un dictionnaire général, mais je ne sais pas si cela est syntaxe commune ou une extension à celle-ci. Voir le bas de cette page: https://developers.google.com/closure/compiler/docs/js-for-compiler – Dave

Répondre

5

De référence: http://yui.github.com/yuidoc/syntax/index.html

«Comme le montre l'exemple, vous pouvez également les balises @param nid Cela vous permet de documenter les paramètres d'objets qui ont leur propre structure imbriquée particulière. »

@param {Object} [options] Data 
    to be mixed into the event 
    facade of the `change` 
    event(s) for these attributes. 
    @param {Boolean} [options.silent] 
    If `true`, no `change` event 
    will be fired. 
5

Dans YUIDOC 0.3.45, qui est la version en vigueur au moment de l'écriture, afin de décrire les objets reçus par les méthodes que vous devez d'abord déclarer l'objet (les options, dans l'exemple ci-dessous), puis ses propriétés avec une notation de points (par exemple, options.url).

/** 
* Describe your method 
* 
* @method yourMethodName 
* @param {object} options - These are the options you may pass 
* @param {string} options.url - the url 
* @param {string} options.otherOption - description of other option 
*/ 
+0

Existe-t-il un moyen de désigner les attributs obligatoires comme celui-ci? Ajouter '@ required' ci-dessous le param ne fonctionne pas. – JDillon522

Questions connexes