JSDoc UML图解

10

问题: 我正在编辑和使用一个带有JSDoc标签的开源JavaScript库。我想知道是否有任何JSDoc插件可以让我从JSDoc标签中生成类图。

编辑: 我决定尝试 js/uml 并发现了以下内容。 JS/UML Eclipse扩展需要较旧版本的Eclipse(Indigo)和一个不受支持的依赖库UML2tools。我找到了所需的依赖项,并根据Eclipse软件管理器的说法成功安装了它们。当我尝试启用uml功能(已配置js root)时,该过程会挂起。该组提供的示例指向单个文件JavaScript。似乎难以处理引用多个文件的情况。


1
谷歌给了我JS/UML。话虽如此,我相信没有一种解决方案可以仅通过jsdoc标签生成一个完整的UML图,因为jsdoc并没有记录UML旨在表示的所有内容。jsdoc标签可以告诉您Foo有一个Bar,但它不会告诉您多少个Foo对象可以有一个Bar,或者Foo可以有多少个Bar对象,这种关系是否是不可变的,是否是聚合、组合等。 - Louis
@Louis,如果使用了@extends标签,我想确实只是想看到类层次结构。 - theCrux
JS/UML 看起来支持这个功能。 - Louis
不幸的是,安装此扩展程序非常麻烦,因为它只能在Indigo EE Dev上运行,并且必须使用旧版本的uml2tools。 - theCrux
1
JS/UML Eclipse扩展需要旧版本的Eclipse(Indigo)和不受支持的依赖库UML2tools。我找到了所需的依赖项,并根据Eclipse软件管理器的说法正确安装了它们。当我尝试启用uml功能(已配置js root)时,过程会挂起。该组提供的示例指向单个文件JavaScript。似乎无法处理多个被引用的文件。 - theCrux
我建议在你的问题中加入关于JS/UML的经验,这样对那些可能想要建议或尝试的人来说就非常明显了(而且他们可能不会阅读评论)。 - Louis
2个回答

4

3
不确定之前的JSDoc版本能否做到,但现在JSDoc支持JavaScript类和扩展关键词。如果代码标记正确,JSDoc可以理解类继承。
可以创建一个订阅处理完成事件的JSDoc插件:“处理完成事件在JSDoc更新解析结果以反映继承和借用符号后触发。”http://usejsdoc.org/about-plugins.html 然后,您可以遍历Doclets(表示代码元素的对象)并将其序列化为您自己的JSON。然后,您可以为原始代码的JSON描述编写一个简单的HTML呈现器。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接