loggingTypeScript代码的工具和指南?
是否有任何生成TypeScript源代码文档的工具? 或者我应该使用像NaturalDocs一样的通用? 对于单独的文档量来说,块注释的build议风格是什么?
我应该使用:
///<foo>bar</foo> MSVS kind of comments?
要么
/** @javadoc style comments */
也许
/* Something like this? */
我很害怕使用///
因为它被用于导入,我不想踩在可能以类似的方式引入的其他未来function – 但你永远不知道…
还是有可能从TypeScript生成文档化的JavaScript,然后使用JavaScript工具链?
也许有点晚,但是当我遇到这个问题后,我发现还没有工具可以做到这一点。 所以我分叉TS编译器,并创build代码来做到这一点。
在v0.9.0.1分叉的TypeScript编译器项目,然后添加一个“–documentation”选项,将从代码中放置的任何JSDoc生成维基文档(无需仅仅输出方法/属性等)
它产生的.ts.wiki文件(其内容适合直接上传到CodePlex等,如果你也使用新的–wikiRemoveRoot和–wikiSourceRoot PARAMS – 见fork – 我的第一个提交描述)。 或者你可以调整代码来生成HTML(这将是相对简单的 – 我已经完成了编译器/ delcrationEmitter :)的努力工作)
希望这有助于你(或者你或者这个问题的未来读者)
埃德
我刚刚发布了一个名为TypeDoc的工具,它可以生成TypeScript * .ts文件中的html api文档页面。
文档生成器运行TypeScript编译器,并从生成的编译器符号中提取types信息。 因此,您不必在您的评论中包含任何其他元数据。
如果你想尝试一下,只需安装并通过npm运行该工具:
npm install typedoc --global typedoc --out path/to/documentation/ path/to/typescript/project/
如果您想知道使用TypeDoc创build的文档是什么样子,请转到项目的GitHub页面:
你可以在你的函数上面使用这种注释。
/** * Comment goes here */
接下来当你打开你的方法时,它会显示文档。
生成XML文档注释了TypeScript语言的build议问题之一。
现在TypeScript工具支持JSDoc 宣布TypeScript 0.8.2 。
所以,你一定要使用JSDoc风格的评论。 如果您只需要智能感知评论 – 使用JSDoc将覆盖您的要求。 如果因为要为API消费者提供文档而需要注释,则应该在注释中使用声明文件(* .d.ts)。 如果你想在Web上生成漂亮的文档 – 我想只要等待TypeScript团队实现XML文档注释的生成(或者手工编写),就很容易了。
我正在编译为JavaScript,并使用jsduck( https://github.com/senchalabs/jsduck )生成基于JavaScript文件的api文档。 只要你不告诉TSC删除完美的评论,除了没有默认值(!)的字段。
module example { /** * My class description * @class example.MyClass */ export class MyClass { /** * Description of my property * @property {String} myProperty */ myProperty: string = null; /** * This property will be removed in compiled JavaScript, that's why * this documentation will not be visible in jsduck. */ willNotWork: string; /** * Description of my method * @method myFunction * @param {String} myParam */ myFunction(myParam: string): void { } } } // end of module
我已经写了一个从声明(.d.ts)文件中生成HTML文档的工具。 它对JSDoc风格的评论有基本的支持。
使用-d -c
选项编译TypeScript源文件以生成声明文件并保留注释。 然后安装后,你可以运行
typescript-docs *.d.ts
在标准输出上生成HTML文档。
要将输出保存到文件,请使用
typescript-docs *.d.ts --output=path/to/output.html