2016-04-29 5 views
1

私はSystemJSでAngular2を使用しています。これは、同梱の目的であるTypeScriptを取得して匿名レジスタではなく名前付きレジスタを生成する

... 
System.register([], [...deps...], ...); //Generated by TypeScript compiler 
System.register('myModule', [...deps...], ...); //How to do this? 
... 

:私は活字体のコンパイラは、匿名のレジスタではなく、名前のレジスタを生成しているという事実に降りてきたいくつかの問題に出くわしました。私は自分のコンポーネントのためにAngular2が既に行っていることをしたい。 1つのミニファイルに複数のSystem.registerコールを入れ、ルートコンポーネントをインポートします。

これを行う方法は?

+0

ソースコードをどのようにコンパイルしていますか?私は好奇心が強いので、私は探し続けます。具体的なものは何も見つかりませんでしたが、tscコマンドを使用すると、これは可能ではないと私は考えています。 –

+0

'tsc'ではこれが可能ではないので、それはコンパイルするノードエンジンだからです。私はビルトインコンパイラを持っているVisual Studioを使用します。どちらのコンパイラでもtsconfig.jsonまたはMSBuildの設定が使用されるため、違いはありません。コンパイラのオプションにはそのようなオプションはないようです:https://www.typescriptlang.org/docs/handbook/compiler-options.html – RoninCoder

答えて

1

TypeScriptコンパイラ設定(つまりtsconfig.json)の "outFile"属性をファイル名で設定する必要があります。

この場合、すべてのモジュールは1つのファイル(指定されたもの)にコンパイルされ、匿名のモジュールではない名前が付けられます。

+1

絶対に正しいです。面白いのは、TypeScriptコンパイラは、 '--outFile'が存在する場合のみバリエーションを認識します。 – RoninCoder

関連する問題