JSDOC для классов в Javascript Closure или Anonymous Function

Я хотел добавить аннотации jsdoc к своим кодам AngularJS, поэтому я попытался:

PageFactory.js

/**
 * Creates an instance of PageFactory.
 *
 * @constructor
 * @this {PageFactory}
 * 
*/
function PageFactory() {
}

angular.module ( 'app' ).factory ('PageFactory', PageFactory);

Приведенное выше работает нормально и выдает ожидаемый вывод jsdoc. Но когда я заключаю эти коды в анонимную функцию следующим образом:

PageFactory.js

(function (){

    /**
     * Creates an instance of PageFactory.
     *
     * @constructor
     * @this {PageFactory}
     * 
    */
    function PageFactory() {
    }

    angular.module ( 'app' ).factory ('PageFactory', PageFactory);

})();

Сгенерированный вывод jsdoc html пуст и не содержит документации по классу PageFactory.

Есть ли способ заставить jsdoc работать с анонимными функциями или работать с моим вторым кодом?

Заранее спасибо.


person s4m0k    schedule 11.03.2014    source источник


Ответы (1)


Используйте @lends <global> следующим образом:

(/** @lends <global> */ function (){
// etc... the rest remains the same.
person Louis    schedule 11.03.2014
comment
Спасибо чувак, это помогло. хотя классы имеют ~ впереди, но это так хорошо, как я хотел. - person s4m0k; 25.03.2014
comment
Рад помочь. См. документацию по пути имени, чтобы узнать, что означают ~ и другие символы. - person Louis; 25.03.2014