2012-02-20 9 views
10

Come si formatta array e oggetti nidificati usando jsdoc?Domande sulla documentazione di array nidificati e dati oggetto con jsDoc

Questa è la mia ipotesi migliore:

an_obj = { 
     username1 : [ 
      { 
       param1 : "value 1-1-1", 
       param2 : "value 1-1-2", 
       optional_nested : "1-1--2" 
      }, 
      { 
       param1 : "value 1-2-1", 
       param2 : "value 1-2-2" 
      }, 
     ], 
     username2 : [ 
      { 
       param1 : "value 2-1-1", 
       param2 : "value 2-1-2" 
      }, 
      { 
       param1 : "value 2-2-1", 
       param2 : "value 2-2-2", 
       optional_nested : "2-2--2"    

      } 
     ] 
    } 
} 


/** 
* A function description. 
* @param {Object} obj 
* @param {Object} obj.username This is not the object name, but a name type. 
* @param {Array} obj.username.array Desc... using [] would conflict with optional params. 
*         However this could be confused with an object called array. 
* @param {String} obj.username.array.param1 Desc... This is the object name rather than a type. 
* @param {String} obj.username.array.param2 Desc... 
* @param {String} obj.username.array.[optional_param] Desc... 
*/ 
var myFunc = function(obj){ 
    //... 
}; 
myFunc(an_obj); 

Come faccio a indicare che un oggetto è indicizzato da una sorta di corda?

Come si definisce un array nidificato?

Inoltre non si sa dove collocare le parentesi quadre nel parametro facoltativo.

risposta

1

Si consiglia di controllare this out. Probabilmente mi scrivo qualcosa di simile:

//{Object{username:<Array<Object{param1:String, param2:String,[optional_nest]:string}>>}} 
+0

Il collegamento è morto e l'esempio precedente genera "Espressione tipo non valida" con jsdoc 3.3 –

0

si può provare a farlo in questo modo: (come specificato qui http://code.google.com/p/jsdoc-toolkit/wiki/TagParam)

/** 
* @param {String[]} obj.username.array 
*/ 

questo dovrebbe dichiarare obj.username.array come un array di stringhe. Stai usando jsdoc o jsdoc3?

+0

Attualmente sto utilizzando jsdoc-toolkit v3. Non riesco a capire come affrontare qualcosa di simile {id: 'moo', articoli: [{url: '...', descrizione: 'moo2'}, ...]} – walialu

+0

Questo non aiuta , il caso sta documentando matrici di oggetti anonimi, non matrici di oggetti reali –

Problemi correlati