2017-05-03 3 views
0

私はMonaco Editorを使用していますが、可能であれば、typescript-codesの中にtypescript宣言(* .d.ts)を作成するのはどうかと思います。Monaco Editor:TypeScript宣言を自動的に作成する

この擬似コードのようなもの:

var myTsCode = "function greeter(person: string): string { return 'Hello, ' + person; }"; 
var myDTS = monaco.languages.typescript.createdts(myTsCode); // returns 'declare function greeter(person: string): string;' 

monaco.languages.typescript.typescriptDefaults.addExtraLib(myDTS, "filename/my.d.ts"); 

(私はコマンドライン経由で行うことができます基本的には同じ方法: "TSC myTsCode.ts -d")事前&挨拶で

おかげで...ピーター

答えて

0

はい、明らかにそれが可能である - この(不完全なコード)を試してみてください。

let compilerOptions = (monaco.languages.typescript.typescriptDefaults as any) 
    .getCompilerOptions(); // getCompilerOptions is not "public" 
compilerOptions.declaration = true; 
monaco.languages.typescript.typescriptDefaults.setCompilerOptions(compilerOptions); 

そして

getWorker.then((worker: any) => { 
    worker(model.uri) 
     .then((client: any) => { 
      client.getEmitOutput(model.uri.toString()).then((result: any) => { 
       console.log(result); // result.outputFiles[1].text 
      }); 
     }); 
}); 

アレイ内の第二のファイルはまたcompilerOptions.sourceMap = true;

によって 1.js.mapソースマップファイルを生成することができる 1.d.ts

あります

関連する問題