5

我试图找到如何让 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 正确生成指向外部模块的链接?

4

1 回答 1

4

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

于 2013-03-05T01:55:21.213 回答