我目前正在用 jsdoc 记录我的 JS 文件,但我遇到了一些麻烦。我有 2 个文件,file1.jsfile2.js(显然不是他们的真名)。这两个文件都包含许多我以 jsdoc 样式记录的函数。当我同时在两个文件上运行 jsdoc 时,输出是一个全局函数及其描述的列表。函数实际所在的位置(无论是在 file1.js 还是 file2.js 中)之间没有区别。有什么方法可以创建这种区别,以便为我的文档提供更好的结构?

最佳答案

您可以在每个文件中使用 @module 标签:

/**
 * @module file1
 */

您可以将 file2 用于其他文件。我假设您的模块与您的文件具有相同的名称。

然后当你想引用模块中的东西时,你可以使用 module: 表示法。因此,如果您的 file1 模块包含一个名为 foo 的类。您可以引用它来注意另一个模块中的函数使用 @returns {module:file1~foo} 返回的数据类型。波浪线符号解释为 here 。它只是表明 foo 是模块 file1 的“内部”成员。 (在我看来,让它成为“静态”成员会更好,但当前版本的 jsdoc 不能很好地处理模块。)

关于javascript - 防止 jsdoc 输出中的全局变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18202688/

10-12 15:20