JSDoc3& NodeJS链接到模块中的类型

时间:2012-10-16 09:22:48

标签: node.js jsdoc

我试图找到如何让JSDoc3自动生成到其他模块的类的链接。 我发现很难用文字解释,所以让我举一些例子。以下脚本生成预期输出:

/**
 * @constructor
 */
var SomeClass = function(){}

/**
 * @param {SomeClass} someParam description
 */
var someFunc = function(someParam){}

也就是说,JSDoc3正确生成someFunc的参数列表到SomeClass的类描述的链接。但是,当我将SomeClass放在外部模块中时,我似乎无法让JSDoc3生成链接:

/**
 * @file SomeClass.js
 * @module SomeClass
 */

/**
 * @constructor
 */
exports.SomeClass(){}


/**
 * @file main.js
 */
var SomeClass = require('./SomeClass');

/**
 * @param {SomeClass} someParam description
 */
function someFunc(someParam){}

现在JSDoc3正确生成了两个文件的文档,但它没有将someFunc的参数类型链接到SomeClass的页面。我尝试将@param {SomeClass}替换为:

  • @param {SomeClass.SomeClass}
  • @param {SomeClass/SomeClass}
  • @param {@link SomeClass}
  • @param {@link SomeClass.SomeClass}
  • @param {@link SomeClass/SomeClass}

但这些都不起作用:在所有情况下,文档只是在大括号内显示文本(即使我使用@link)。

如何让JSDoc3正确生成指向外部模块的链接?

1 个答案:

答案 0 :(得分:4)

引用模块时使用module:前缀。如果模块的返回值是类本身,则使用module:SomeClass。如果它是模块的属性,请使用module:SomeClass.SomeClass。如果jsdoc可以找到对现有类文档的引用,则不需要@link标记。