如果我正在开发一个节点模块 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标签对此进行注释的正确方法是什么,以便输出结构合理的文档(模块和类列表)?
答案 0 :(得分:0)
花了一些时间搜索我能找到的最好的东西,这是(在我看来)"误用" @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/