Typescript 使用transpileModule生成definitions.d.ts
我正在使用TypeScript编译器API从ts生成js 我的ts代码是生成的,因此它没有保存在任何文件中,我正在使用Typescript 使用transpileModule生成definitions.d.ts,typescript,Typescript,我正在使用TypeScript编译器API从ts生成js 我的ts代码是生成的,因此它没有保存在任何文件中,我正在使用transpileModule直接生成js,而无需保存临时ts文件 但是我希望可以选择在js文件附近生成声明。 我正在将声明和声明dir传递给编译器选项,但它什么也不做 export const defaultCompilerOptions: ts.CompilerOptions = { target: ts.ScriptTarget.Latest, module: t
transpileModule
直接生成js,而无需保存临时ts文件
但是我希望可以选择在js文件附近生成声明
。
我正在将声明
和声明dir
传递给编译器选项,但它什么也不做
export const defaultCompilerOptions: ts.CompilerOptions = {
target: ts.ScriptTarget.Latest,
module: ts.ModuleKind.ES2015,
lib: ['es2015'],
strict: true,
declaration: true,
declarationDir: '/tmp/xpto',
};
const gen = ts.transpileModule(tsCode, { compilerOptions, fileName, reportDiagnostics: true });
您不能使用
transpileModule
生成声明文件,因为此函数仅执行语法转换(而声明文件需要语义信息)。您需要使用页面顶部显示的常规createProgram
功能。因此我需要将文件保存到临时ts文件中,然后运行createProgram
进行生成?我们试图避免写文件,但如果必须这样做,没问题