Как документировать проект AMD + Backbone с помощью JSDoc3

У меня есть проект на основе базового шаблона, который я хочу задокументировать с помощью последних jdoc-toolkit

Хотя я не могу заставить его генерировать что-либо, кроме пустого класса _global

Пример кода:

/**
 * This is a root model for DLClass
 * @module models/DLClass
 */
define([
    'underscore',
    'backbone'
], /** @lends DLClass */ function (_, Backbone) {        
    /**
     * This is a root model for DLClass
     * @class DLClass
     * @constructor
     * @return Session Object
     */
    var DLModel = Backbone.Model.extend({
        /** @lends DLClass.prototype */

    /**
     * Generic tap event
     * @param touchEvent
     */
    onTap: function (touchEvent) {

    },

person Max The Cat    schedule 01.03.2013    source источник
comment
Вы можете не считать это очень полезным предложением, но вы можете принять во внимание, что вы можете получить все или почти все желаемые преимущества, просто используя JSDoc так, как вы уже это делаете, и никогда не создавая файлы документации. Ваши разработчики должны быть в состоянии читать документацию внутри файлов .js, не нуждаясь в сгенерированном HTML, и тем самым вы полностью избежите проблемы в этом вопросе.   -  person machineghost    schedule 26.04.2013


Ответы (1)


Попробуйте добавить @namespace, чтобы позволить JSDoc просмотреть содержимое модуля. И определите свой модуль и его функции, используя @name.

/** 
 * This is a root model for DLClass
 * @module models/DLClass
 * @namespace
 */
define([
    'underscore',
    'backbone'
], /** @lends DLClass */ function (_, Backbone) {        
    /**
     * This is a root model for DLClass
     * @class DLClass
     * @module models/DLClass
     * @name DLClass
     * @constructor
     * @return Session Object
     */
    var DLModel = Backbone.Model.extend({
        /** @lends DLClass.prototype */

        /**
         * Generic tap event
         * @name DLClass.onTap
         * @function
         * @param touchEvent
         */
        onTap: function (touchEvent) {

        },
person Amy    schedule 10.05.2013