2013-06-15 6 views
6

Ho problemi con JSDoc3 per documentare il codice che è strutturato in questo sensoCome utilizzare JSDoc3 per documentare i namespace annidati

/** 
* @namespace MyNamespace.MySubNamespace 
*/ 

(function (MyNamespace) { 
    MyNamespace.MySubNamespace.Foo = { 
     doSomething: function (someParam) { 
      // doing it 
     } 
    } 
})(window.MyNamespace) 

Come dovrei usare JSDoc3 a documentare che MyNamespace contiene MySubNamespace che contiene Foo? Inoltre, come dovrei associare doSomething con Foo e documentare il suo parametro someParam?

Una limitazione che ho è che non posso aggiungere documentazione al file in cui sono dichiarati MyNamespace e MySubNamespace.

Grazie mille!

risposta

17

Capito. Spero che questa soluzione aiuti gli altri.

/** 
* @namespace MyNamespace.MySubNamespace 
*/ 

(function (MyNamespace) { 
    /** 
     * Foo namespace 
     * @namespace Foo 
     * @memberOf MyNamespace.MySubNamespace 
     */ 
    var Foo = { 
     /** 
      * Does something. 
      * @memberOf MyNamespace.MySubNamespace.Foo 
      * @param {object} someParam Some parameter. 
      */ 
     doSomething: function (someParam) { 
      // doing it 
     } 
    }; 
    MyNamespace.MySubNamespace.Foo = Foo; 
})(window.MyNamespace)