Typescript'的API信息;是打字机吗?或者:使用createProgram()时如何调用getText()?

Typescript'的API信息;是打字机吗?或者:使用createProgram()时如何调用getText()?,api,typescript,abstract-syntax-tree,typechecking,Api,Typescript,Abstract Syntax Tree,Typechecking,我在玩弄Typescript编译器的接口,发现createSourceFile()返回一个包含节点的树,其中getText()将返回节点支配的字符串。这对于打印警告和调试非常有用 现在我想查看类型信息,但为此我必须调用createProgram()。不幸的是,getSourceFile()返回的树不允许调用getText()。原因似乎是节点没有父节点,导致getText()和getStartPos()崩溃 所以我的问题是:是否有一个变通方法,或者更好:是否有关于API的详细文档?我发现的唯一信息

我在玩弄Typescript编译器的接口,发现
createSourceFile()
返回一个包含节点的树,其中
getText()
将返回节点支配的字符串。这对于打印警告和调试非常有用

现在我想查看类型信息,但为此我必须调用
createProgram()
。不幸的是,getSourceFile()返回的树不允许调用
getText()
。原因似乎是节点没有父节点,导致
getText()
getStartPos()
崩溃


所以我的问题是:是否有一个变通方法,或者更好:是否有关于API的详细文档?我发现的唯一信息非常肤浅,而且存储库中没有关于这部分代码的任何文档。

非常奇怪,调用
program.getSourceFile('foo.ts'
).getText()我没有问题。您使用什么版本的typescript?我完全同意没有任何文件。您可能已经这样做了(作为typescript和所有类型),但万一您没有这样做:使用一个了解类型的编辑器+自动完成+自己探索
d.ts
文件至少有些帮助。问题不在于顶级对象,而在于较低的对象。getText()的源调用getSourceFile(),顶级对象是一个。但是,语法树的较低节点没有父节点,因此找不到源文件,应用程序就会崩溃。