gpt4 book ai didi

node.js - 如何使用jsdoc3记录ES6类模块?

转载 作者:太空宇宙 更新时间:2023-11-04 02:19:48 25 4
gpt4 key购买 nike

如果我正在开发一个 Node 模块something-nifty,它具有以下目录结构:

something-nifty/
lib/
plugins/
Plugin.cs
index.js
package.json

并且plugin.cs定义如下:

"use strict";

/**
* @module something-nifty/lib/plugins/Plugin
*/

/**
* The base class for a 'something-nifty' plugin.
*/
class Plugin {
/**
* Constructs the plugin...
*/
constructor() {
}
}

module.exports = Plugin;

在生成的文档中,该类被记录为具有 @inner 标记,这意味着每当我引用它时,我都需要重复该类名称两次:

"use strict";

/**
* @module something-nifty/lib/foo
*/

/**
* Foo...
* @param {module:something-nifty/lib/plugins/Plugin~Plugin} plugin
*/
exports.abc = function(plugin) { ... };

当然,在这种情况下我不需要两次指定类名,因为模块本质上就是类。使用 jsdoc3 标签对其进行注释以便输出结构正确的文档(模块和类列表)的正确方法是什么?

最佳答案

花了一些时间搜索我能找到的最好的内容,这是(在我看来)“滥用”@alias 标记,如以下代码片段所示:

"use strict";

/**
* @module something-nifty/lib/plugins/Plugin
*/

/**
* The base class for a 'something-nifty' plugin.
* @alias module:something-nifty/lib/plugins/Plugin
*/
class Plugin {
/**
* Constructs the plugin...
*/
constructor() {
}
}

module.exports = Plugin;

以下链接引用了我在其中了解此 @alias 技巧的文章: http://www.pagosoft.com/javascript/using-jsdoc-amd-modules/

关于node.js - 如何使用jsdoc3记录ES6类模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34034716/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com