Jsdoc3注释对象

8
假设我有一些对象,使用jsdoc3进行注释的最佳方式是什么?
/**
 * Test object
 * @namespace test
 */
var test = {
    /**
     * Some defaults
     * @memberOf test
     */
    defaults: {
      'test1': 1,
      'test2': 2
    },
    /**
     * Somthing else
     * @memberOf test
     */
    deep: {
      /**
       * Some option
       * @memberOf {test.deep}
       */
      option: {},
      /**
       * Some method
       * @memberOf test.deep
       */
      method: {},
      /**
       * Some option
       * @memberOf {test.deep.evenMore}
       */
      evenMore: {
        /**
         * Some option
         * @memberOf test.deep.evenMore
         */
        test: false
      }
    }
};

但是jsdoc只为命名空间test和成员deep、defaults创建文档。

命名空间:test Test对象

成员

deep 其他一些内容

defaults 一些默认值


1
我认为test.deep也应该是一个命名空间,如果你想让Member出现。 - Scottux
我不是JavaScript专家,但也许有更好的方法来处理这样的事情,比如原型? - rpax
1个回答

1
正如@Scottux所说,实现这一点的唯一方法是命名额外的命名空间。
/**
 * Test object
 * @namespace test
 */
var test = {
    /**
     * Some defaults
     * @memberOf test
     */
    defaults: {
      'test1': 1,
      'test2': 2
    },
    /**
     * Somthing else
     * @memberOf test
     * @namespace test.deep
     */
    deep: {
      /**
       * Some option
       * @memberOf test.deep
       */
      option: {},
      /**
       * Some method
       * @memberOf test.deep
       */
      method: {},
      /**
       * Some option
       * @memberOf test.deep
       * @namespace test.deep.evenMore
       */
      evenMore: {
        /**
         * Some option
         * @memberOf test.deep.evenMore
         */
        test: false
      }
    }
};

生成的文档将如下所示:


Generated documentation screenshot


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接