问题标签 [jsdoc3]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
5 回答
11500 浏览

javascript - JSDoc 的默认“主页”文本和内容

从 Node.js 运行基本的 JSDoc 编译/渲染后:

我使用目录“out”中的默认模板获得了格式良好的文档。几乎一切都符合预期!

但是当打开文档时,它总是在 index.html 页面上显示“Home”,在该初始页面上没有内容,并且在侧边栏导航中有“Home”。

我如何以及在哪里标注项目名称以替换“Home”?我还想查看项目描述,以及作者和版权信息。

这似乎是 JSDoc 中最基本的事情,但我找不到信息!根据我在互联网上找到的一些随机文章,我尝试了以下方法:

但我得不到爱。

[编辑添加:]

发现了 @file / @fileOverview / @overview (所有同义词)指令,这有点帮助,因为我现在可以描述和设置每个文件的版权/作者信息:

剩下两个“问题”需要解决:

  1. 概述说明;我认为@file 满足了我的大部分需求,但由于它是每个文件的,我仍然希望在包含文件的描述之前出现一个“介绍”类型的段落或概述段落。

  2. 用自定义文本替换“主页”文本

0 投票
1 回答
2366 浏览

javascript - JSDoc侧边栏中的嵌套方法

感谢在这里找到的答案:

https://stackoverflow.com/a/19336366/592495

我的 JavaScript 文档组织良好且格式正确。每个命名空间都是其中包含的方法的“父级”。但是,导航并不像我想要的那么精细。

通过简单的命令 ( jsdoc file1.js file2.js) 使用 node.js 工具编译/渲染后,文档将生成为默认模板。这个默认模板在侧边栏导航中显示我的命名空间,但它不显示每个包含的方法。

您可以通过将@class指令添加到每个方法来伪造方法列表,但正如我们所知,它们并不是真正的类。

我希望看到这样的侧边栏导航:

任何我忽略的文档方向将不胜感激。


[编辑添加:]

经过实验,@class几乎完全符合我的要求,但有一些例外:

  • 它列出了命名空间之上的类。我不喜欢这样,因为命名空间本来就是“父母”。

  • JavaScript 没有那种意义上的类。不是那些被称为“类”的命名法。在阅读文档以查看“类”列表时,它会产生奇怪的断开连接。

  • 它会自动添加“新”运算符。并非所有方法都有构造函数……您可以看到问题!


[编辑:示例代码]

所以这是当前的结构。在我用 JSDoc 注释对其进行注释之前,这是基本方法:

因此,使用对象文字表示法,顶层是整个应用程序的“命名空间”,但其中有用于不同目的的子命名空间。在这里,我有一个特定于实用程序的子命名空间,以及另一个特定于渲染的子命名空间。每个都可以有属性,但更重要的是它们每个都包含函数。这些功能应该出现在侧边栏中。现在用我当前的 JSDoc 模式来充实它:

0 投票
0 回答
419 浏览

javascript - JSDoc - 如何记录原型对象的方法

根据我对 JSDoc 中命名继承的理解,这应该可以定义@name User.format#name,但不能

0 投票
0 回答
69 浏览

angularjs - NGDOC - 自上而下的层次结构

我有一个用 NGDOC 记录的大型 AngularJS 项目。我们有很多表格,特定的指令只能包含在特定的表格中。这现在被记录为依赖项 - 每个指令在其注释中都有 @requires my.directive:myFormContainerBlaBla。此指令的生成文档包含到依赖项部分中的 myFormContainerBlaBla 的适当链接。

但是,myFormContainerBlaBla 的文档不包含对可能在其中使用的指令的任何引用。记录指令的菜单列表也是扁平的。有没有办法做到这一点:

1) myFormContainerBlaBla 的文档包含指向所有 @require 它的指令的链接。

2) 文档化指令的菜单列表是分层排列的,即

0 投票
0 回答
538 浏览

javascript - JSDoc - 在单独的文件中创建自定义类型的正确方法

我想创建自定义类型,例如代码完成,在名为 的单独文件custom-types.js中,以我在Rzslider 角度存储库中找到的方式,在底部的文件Rzslider.js 文件中:

这是记录自己的类型的正确方法吗?重要的是它应该放在单独的文件中,以尽可能少地用JSDoc注释污染代码。我正在使用JSDoc 3绑定到 Intellij 14 的插件,提前感谢您对我的帮助。

0 投票
1 回答
1295 浏览

javascript - 如何给 JSDoc 添加标签?

我正在使用 Meteor,与普通 JavaScript 相比,它有一些奇怪的警告。我想添加一些标签以使文档更加明确。

@where@rolerequired更具体到这个基于 Meteor 的应用程序。@where可以在 devdocs.io 之类的文件中看到。

如何给 JSDoc 添加标签?

0 投票
1 回答
505 浏览

javascript - 带有导出对象的 JSDoc CommonJS 传递到 IIFE

更新:@spenibus 帮助我得出结论,这可能是 JSDoc 本身的问题。我在他们的 GitHub 上将我的发现添加到这个未解决的问题中。@spenibus 找到了一个解决方案,但它需要稍微修改版本的 IIFE

我在 CommonJS 模块中使用 IIFE 以便能够与 CommonJS 一起工作,并且如果 module.exports 不存在,则回退到将接口分配给窗口对象。如何正确记录这一点,以便将传入的导出对象视为 module.exports?

0 投票
1 回答
31 浏览

javascript - 返回具有特定属性和类型的对象

我有一个带有operation两个参数str(一个字符串)和fn(一个函数)的函数。

  • 你如何描述这个返回值?
  • 这个返回值在 JSDoc 中是什么样的?
  • 示例输出格式是什么?

这个@return描述可以接受吗?

这对于@example输出是否可以接受?

我问的主要原因是因为我想使用这种格式来测试像yamadapc/jsdoctest这样的套件中的功能。

0 投票
3 回答
16555 浏览

node.js - JSDocs:记录 Node.js 快速路由

我正在努力用 JSDocs 记录 router.get 调用。如果我尝试将文档附加到我的路由器调用本身,我无法让文档在页面上正确显示。

为了解决这个问题,我为函数命名。

这行得通,但我真的很想找到一种方法来让第一种方法起作用。有没有办法记录第一个例子?我可以使用的关键字?

0 投票
2 回答
309 浏览

javascript - 如何记录使用 Object.create 创建的对象,该对象也具有原型方法

我正在尝试找出将 jsdoc3 与闭包字典一起使用的 jsdoc 的最佳方法。下面的代码几乎记录了我想要的内容,但是@class标签在文档中添加了一个新关键字,而且我也对使用类定义感到不安,因为它并不是真正的类。

@namespace最初似乎是一个更好的选择,但它不允许@param在伪构造函数上进行记录或类似操作。任何帮助表示赞赏。