JSDoc类建议布局

时间:2013-08-06 17:51:07

标签: jsdoc

我是JSDoc的新手,我正在试图找出标记代码的最佳方法。出于某种原因,在我将某些内容标记为@class之后,我无法将任何内容显示为@inner:

/**
 * The logger, to simply output logs to the console (or potentially a variable)
 * @class Logger
 * @requires 'config/globalConfig'
 */
define(["config/globalConfig"], function (config) {
    /**
     * Instantiate a new copy of the logger for a class/object
     * @constructor
     * @param name {string} - The name of the class instantiating the logger
     */
    return function (name) {
        /**
         * @memberOf Logger
         * @type {string}
         */
        this.name = name;

        /**
         * Place the message on the console, only for "DEV" level debugging
         * @function
         * @memberOf Logger
         * @param message {string}
         */
        this.debug = function (message) {
            ... some code ...
        };         
    };
});

现在所有成员都显示为< static>。如果我将@inner标记添加到任何属性/函数中,它们将从输出中完全消失。

编辑:我也忘了提。 @constructor标志似乎也没有工作。如果我删除整个部分,它在输出中显示相同。输出不包括我想用我的构造函数提及的@param。

如果完全关闭,请告诉我,我只是在猜测,因为JSDoc3文档有点难以阅读。

1 个答案:

答案 0 :(得分:1)

所以我想通了,仍然不确定它是否绝对正确。我不得不使用“Logger~name”使其正确显示为内部函数。根据JSDoc文档,这〜很少使用。似乎是唯一对我有用的东西。

define(["config/globalConfig"], function (config) {
    /**
     * The logger, to simply output logs to the console (or potentially a variable)
     * @class Logger
     * @param name {string} - The name of the class instantiating the logger
     */
    return function (name) {
        this.name = name;

        /**
         * Place the message on the console, only for "DEV" level debugging
         * @function Logger~debug
         * @param message {string}
         */
        this.debug = function (message) {
            ... code ...
        };
    };
});