【发布时间】:2020-09-18 08:35:23
【问题描述】:
我目前正在尝试使用 Typescript 的编译器 API 修改 FunctionDeclaration 的主体。我正在创建一些新的变量声明,并且正在使用从 SourceFile A 派生的表达式设置“初始化程序”字段。
然后,我尝试将这些新的 VariableDeclarations 添加到 SourceFile B 的 FunctionDeclaration 的主体中,但是当使用 SourceFile A 作为 printer.printFile(...) 中的源文件时,这些新创建的 VariableDeclarations 的右侧无法正确打印。分号和运算符似乎可以打印,但没有标识符或文字。
问题似乎是不同的 SourceFiles,即使两个 SourceFiles 中使用的标识符完全相同。
有没有办法为那些新创建的 VariableDeclarations 设置 SourceFile(或者实际上,为导致问题的“初始化程序”表达式)?如果没有,我还能做些什么来获取在一个 SourceFile 中找到的表达式并在另一个 SourceFile 中使用它?
【问题讨论】:
标签: typescript typescript-compiler-api