【问题标题】:How to get @borrows tag working in JSDoc如何让@borrows 标签在 JSDoc 中工作
【发布时间】:2020-04-12 00:02:27
【问题描述】:

我一直很难让@borrows 标记在JSDoc 中工作。我一直在尝试从一个函数中获取文档,并将其作为第二个函数的文档。但我似乎连一个简单的例子都搞不定!

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

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

我期待这会输出两个函数的文档,并且两者完全相同。然而只有 funcA 只有一个描述。

【问题讨论】:

    标签: jsdoc


    【解决方案1】:

    @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 中的一个错误。 (或者至少是文档中的一个错误。)

    【讨论】:

    • 我想没有机会使用参数 (@param) 进行这项工作?
    【解决方案2】:

    我最近使用了它,我想做的是创建一个模块并为其添加一些功能。问题是我没有与此模块直接相关的任何内容,因为导出只是一行。以下是我最终使用@borrows 的方式。

    /**
     * A typehead with options filtered by user input.
     *
     * @module Typehead
     * @borrows Typehead
     * @borrows TypedOption
     * @example
     * <Typehead />
     */
    export { default } from './Typehead'
    
    

    在这种情况下,Typehead 将根据Typehead 的类型在模块页面的FunctionClasses 部分借用,并将显示在@example 渲染下。

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

    【讨论】:

      猜你喜欢
      • 2011-04-28
      • 1970-01-01
      • 2015-10-17
      • 1970-01-01
      • 1970-01-01
      • 2011-08-06
      • 2020-06-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多