10

jsdoc-toolkit を使用して、以下の形式でコードを文書化するのに非常に苦労しています。私が使用したタグは望ましい結果をもたらすように見えますが、そうではありません。代わりに、Class が文書化されておらず (クロージャー内でのみ定義されているため)、名前空間のメンバーのリストに Class が含まれていないことを警告します。

可能であれば、@name タグを使用せずにこれを文書化したいと思います。誰でも助けることができますか?

/**
 * @namespace The original namespace
 */
var namespace = function () {
    // private
    /**
     * @private
     */
    function _privateMethod () {

    };

    /**
     * This is the detail about the constructor
     * @class This is the detail about the class
     * @param {Object} argone The first argument
     * @param {Object} argtwo The second argument
     */
    var Class = function (argone, argtwo) {
        /**
         * A public member variable
         */
        this.member = "a member";
    };

    /**
     * A public method
     * @param {Object} argone The first argument
     */
    Class.prototype.publicMethod = function (argone) {

    };

    return /** @lends namespace */ {
        Class: Class
    }
}();
4

2 に答える 2

4

色々と試しましたが、これが一番の出来でした。

最初の部分... publicMethodon を文書化しClassます。最初に を作成ClassしてmemberOf namespaceから で使用@lendsClass.prototypeます。例:

/**
 * @namespace The original namespace
 */
var namespace = function () {
    // private
    /**
     * @private
     */
    function _privateMethod () {

    };

    /**
     * This is the detail about the constructor
     * @class This is the detail about the class
     * @memberOf namespace
     * @param {Object} argone The first argument
     * @param {Object} argtwo The second argument
     */
    var Class = function (argone, argtwo) {
        /**
         * A public member variable
         */
        this.member = "a member";
    };

    Class.prototype = 
    /** @lends namespace.Class */ 
    {
        /** a public method
          * @param {Object} argone The first argument
        */
        publicMethod: function (argone) {

        }
    };

    return {
        Class: Class
    }
}();

さて、第 2 部... のようClassに表示されるようになりnamespaceます。どうすればいいのかわからない...ごめんなさい!namespace.Classクラス インデックスのように表示されます。

于 2013-01-08T05:08:41.283 に答える
0

ヒントとして: jsdoc 2 にはバグや悪い習慣がたくさんあります。
プロジェクトの性質に応じて、 JSDOC3 -> https://github.com/jsdoc3/jsdocを試すか、jsdoc をまったく使用しないことを検討してください。

于 2013-02-05T22:04:02.757 に答える