如何在 JSDoc 中描述解构对象参数[重复]

问题描述 投票:0回答:2

如果我有一个将对象作为参数的 JavaScript 函数,我可以使用 JSDoc 描述该对象的预期属性,如下所示:

/**
 * @param bar
 * @param bar.baz {number}
 * @param bar.qux {number}
 */
function foo(bar) {
    return bar.baz + bar.qux;
}

如果我使用 ECMAScript 6 解构定义函数,而不给真正的参数对象命名,我该如何描述这些属性?

const foo = ({ baz, qux }) => baz + qux;
javascript ecmascript-6 jsdoc
2个回答
17
投票

事实证明,JSDoc 确实支持通过组成占位符名称来进行破坏。缺少官方文档。

http://usejsdoc.org/tags-param.html#parameters-with-properties

/**
 * @param {Object} param - this is object param
 * @param {number} param.baz - this is property param
 * @param {number} param.qux - this is property param
 */
const foo = ({ baz, qux }) => baz + qux;

1
投票

我也有同样的疑问。现在我正在使用 Visual Code Studi,它的插件做了这样的事情(这适合我):

/**
 * @param  {} {a
 * @param  {} b
 * @param  {} c}
 * @param  {} {d}
 */
const aaa = ({a,b,c},{d}) => {

}
© www.soinside.com 2019 - 2024. All rights reserved.