我正在寻找一种在运行时在Angular应用中从类和函数中获取注释的方法,目的是生成自定义文档。使用外部工具生成文档不符合我的要求。我真的需要自己生成文档。
我已经进行了一些试验,到目前为止,我有两种可能的情况:
将相关类作为字符串加载,并通过字符串操作提取注释(我认为这不是最好的情况)。
导入类并使用ts提取注释。此时,当我尝试导入ts:import * as ts from 'typescript'
时,在Angular应用程序中遇到一些错误。显然,这会导致循环引用。这段代码显示了如何从类中提取注释,但是似乎无法在运行时在Angular应用中使用它:comment factory from TypeDoc sources
有人想到从类引用或代表类的字符串中提取注释的方法吗?
答案 0 :(得分:2)
您要的是TypeScript中的元编程实现,目前尚不可用。您需要了解,浏览器不会直接运行TS代码。而是将代码编译为JavaScript,然后运行时才会发生。注释只供程序员查看-无需将其转移到生成的JS转码代码中。
Typedoc仅在编译时起作用,因此它可以访问所有TS源文件。如果您想创建自己的文档解析工具,那很好,但是您将需要学习很多有关编程语言解析如何工作的知识。搜索“龙书”,“ Let's build a simple interpreter”和其他来源。