生成Javascript文档
我正在寻找一种方法来从我的Javascript项目自动生成文档 。 任何人都知道我该怎么做?
据我所知,有一些像JSDoc的工具,但我想知道你的意见,你最好的select,为什么。
谢谢!
编辑:只是要清楚,我需要像JavaDOC或PHPDocumentor,但使用我的Javascript源代码。
有像自然文件这样的工具。 我曾经亲自使用它,这与JavaScript正常工作。
还有像docco这样的工具来logging源代码。
一般来说,自动生成的文档往往过于严格,有时手工制作的API(如jQuery API)更易于使用。
dynamic语言的文档也不同于静态语言的文档。 由于API的使用方式不同,状态的存在更为宽松。
我find了一个很好的教程来使用JSDoc创buildJS文档。 我希望这对有需要的人有帮助。
用JSDoc创build有用的相关Javascript文档
这正是我所需要的。 感谢您的答案堆垛机。
如果你使用node.js,我创build了一个为javascript / node / html / css生成类图的模块。 它基于UML的“WAE”扩展。 它被称为wavi。 对于JavaScript,函数,variables和其他模块的使用都被自动识别。 您可以使用它来logging您的应用程序。
SmartComments + YUIDocs
使用这对不寻常的情侣,你可以在一分钟内logging一个大型的JavaScript项目。
SmartComments,它是一个允许你从JavaScript源代码创build隐式注释的工具。
您可以在控制台中或通过Sublime Text Plugin使用。
autodoc
是涂料; https://www.npmjs.org/package/autodoc | https://github.com/dtao/autodoc
Autodoc允许您在JavaScript函数上方的注释中编写testing,然后从命令行运行这些testing,并使用embedded的相同testing自动生成文档,并在浏览器中正确执行。
思考文学编程,看看http://danieltao.com/lazy.js/docs/一个很好的例子。; 那些绿色的选中标记是testing。
✓ Lazy([1, 2, 4]) // instanceof Lazy.ArrayLikeSequence ✓ Lazy({ foo: "bar" }) // instanceof Lazy.ObjectLikeSequence ✓ Lazy("hello, world!") // instanceof Lazy.StringLikeSequence ✓ Lazy() // sequence: [] ✓ Lazy(null) // sequence: []
这是什么来源看起来像github.com/../lazy.js#L86
/** * Wraps an object and returns a {@link Sequence}. For `null` or `undefined`, * simply returns an empty sequence (see {@link Lazy.strict} for a stricter * implementation). * * - For **arrays**, Lazy will create a sequence comprising the elements in * the array (an {@link ArrayLikeSequence}). * - For **objects**, Lazy will create a sequence of key/value pairs * (an {@link ObjectLikeSequence}). * - For **strings**, Lazy will create a sequence of characters (a * {@link StringLikeSequence}). * * @public * @param {Array|Object|string} source An array, object, or string to wrap. * @returns {Sequence} The wrapped lazy object. * * * @examples * Lazy([1, 2, 4]) // instanceof Lazy.ArrayLikeSequence * Lazy({ foo: "bar" }) // instanceof Lazy.ObjectLikeSequence * Lazy("hello, world!") // instanceof Lazy.StringLikeSequence * Lazy() // sequence: [] * Lazy(null) // sequence: [] */
它扩展了JSDoc https://developers.google.com/closure/compiler/docs/js-for-compiler ,所以你可以让Google的闭包编译器为你validation和优化很多东西。
你使用哪个框架? (如果有的话)。 我认为你select的工具很大程度上取决于它,因为理想的情况是它必须理解类扩展和全部。 否则,我认为jsDoc是一个很好的开始。
嗨,我刚刚findYUIDoc 。 我不太了解,但看起来不错