如何让@borrows标签在JSDoc中运行

时间:2015-04-19 07:22:32

标签: jsdoc

我一直很难让@borrows标签在JSDoc中运行。我一直试图从一个函数获取文档,并将它作为第二个函数的文档。但我似乎甚至无法得到一个简单的例子!

/**
 * This is the description for funcA
 */
var funcA = function() {};

/**
 * @borrows funcA as funcB
 */
var funcB = function() {};

我期望这两个函数的输出文档完全相同。但是只有funcA只有描述。

2 个答案:

答案 0 :(得分:3)

@borrows标记似乎不直接在符号上起作用,而只是间接起作用。例如,我有:

/** does amazing things */
function origFunc = function() {};

/**
 * @borrows origFunc as exportedFunc
 */
exports.exportedFunc = origFunc;

但我和你一样,在生成的文档中没有任何用处。

这似乎是因为@borrows标记似乎在容器上运行。 (如果您在示例中注意到@borrows标记位于“util”模块/命名空间,而不是重命名的符号。)

所以这对我有用:

/** does amazing things */
function origFunc = function() {};

/**
 * @borrows origFunc as exportedFunc
 */
exports = {
  exportedFunc: origFunc,
}

虽然似乎是@borrows中的错误。 (或者至少是文档中的一个错误。)

答案 1 :(得分:0)

我最近使用过它,我试图做的是创建一个模块并向其中添加一些功能。问题是我没有任何与此模块直接相关的内容,因为导出只是一行。这就是我最终使用/** * A typehead with options filtered by user input. * * @module Typehead * @borrows Typehead * @borrows TypedOption * @example * <Typehead /> */ export { default } from './Typehead' 的方式。

Typehead

在这种情况下,Function会根据Classes的类型在模块页面的Typehead@example部分中借用,并显示在{下{1}}渲染。

注意:但是@borrows会在系统中添加一些额外的条目,经过一些试验,也许@see是更好的用法。