使用JSDoc 3在AMD模块中记录类

时间:2016-09-09 14:03:37

标签: javascript amd jsdoc3

我正在尝试使用JSDoc 3在AMD JavaScript模块中记录一个类。这是我的代码,基于文档here中的示例:

push_back()

这产生的输出如下所示:

  

课程:模块:my / jacket

     

模块:我/外套

     

/** * A module representing a jacket. * @module my/jacket */ define('my/jacket', function() { /** * @class * @alias module:my/jacket */ function Jacket() { } /** * Open and close your Jacket. */ Jacket.prototype.zip = function() { }; return Jacket; });

但我想读它:

  

班级:夹克

     

夹克

     

new module:my/jacket()

有办法做到这一点吗?我正在使用jsdoc 3.4.1。

我已尝试将new Jacket()更改为@class,这几乎可以正常工作:该类显示的名称正确,但未生成@class Jacket方法的文档。

1 个答案:

答案 0 :(得分:0)

解决方案是使用@alias标记而不是模块名称设置类(函数)名称:

/**
 * A module representing a jacket.
 * @module my/jacket
 */
define('my/jacket', function() {
  /**
   * @class
   * @alias Jacket
   */
  function Jacket() {
  }

  /**
   * Open and close your Jacket.
   */
  Jacket.prototype.zip = function() {
  };

  return Jacket;
});

这会产生所需的输出:

  

班级:夹克

     

夹克

     

new module:Jacket()

zip方法文档一起使用。