2017-12-29 10 views
0

tsからjsを生成するために、TypeScriptコンパイラAPIを使用しています。transpileModuleで定義.d.tsを生成します。

私のtsコードが生成されるので、ファイルに保存されません。transpileModuleを使用して、一時的なtsファイルを保存せずに直接jsを生成しています。

https://github.com/Microsoft/TypeScript/wiki/Using-the-Compiler-API#transpiling-a-single-file

しかし、私は近くのjsファイルへdeclarationsを生成するオプションを持っていると思います。 (宣言ファイルの発光が意味情報を必要とするのに対し)この関数は唯一の構文の変換を実行するためあなたがtranspileModuleを使用して宣言ファイルを生成することはできません

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 }); 

答えて

2

...私はオプションをコンパイラにdeclarationdeclarationDirを渡していますが、それは何もしません。そのページの上部に表示されている通常のcreateProgram機能を使用する必要があります。

+0

私はファイルを一時的なtsファイルに保存し、生成を行うために 'createProgram'を実行する必要がありますか? ファイルを書く必要がないようにしようとしていましたが、そのようにする必要がある場合は問題ありません –

関連する問題