をこれはバンドルされていない、私のこれがあるtsconfig.json
活字体はangular2とrxjs
{
"compilerOptions": {
"target": "es5",
"module": "system",
"moduleResolution": "node",
"sourceMap": true,
"removeComments": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"noImplicitAny": true,
"suppressImplicitAnyIndexErrors": true,
"outFile": "./js/app.js",
"typeRoots": [
"./node_modules/@types"
],
"types" : [ "node", "core-js" ]
},
"include": [
"./ts/**/*.ts"
],
"exclude": [
"**/*.spec.ts"
]
}
私system.config.js
(基本的には何もありません)、私は1つJSにすべてをバンドルしたいされて私は何をやっている
System.import('main');
私は生産のためにそれを使用することができます。 TypeScriptは私のためのほとんどのステップを行いました。すべてのスクリプトを1つのapp.js
ファイルにまとめます。
しかし、私は私のブラウザのコンソール上
http://localhost/@angular/platform-browser-dynamic 404 (Not Found)
を得ました。
app.js
を掘り下げた後、すべての@angularとRxjsコードがバンドルされたファイルに含まれていないことがわかりました。だから、SystemJsはそれらを探して、デフォルトの方法でスクリプトファイルを要求する方法を知らない。
私の理解では、tsconfig.json
にライン"moduleResolution": "node",
は、すでにそれらの依存関係をロードするためにnode_module
に行く意味すべき「ノード道」で@angularとRxjsをロードするために活字を言っているが、それはしていません。
これが当てはまる場合、SystemJでTypeScriptをどのように使用しますか?つまり、TypeScriptの '' module '': "system" 'は実運用環境ではスタンドアローンで使用できないファイルを出力します。 'node_modules'のパッケージをSystemJs形式にバンドルするには、別の方法が必要です。私の声明が真実なら、タスクの共通ツールは何ですか? –
もう1つの質問は、TypeScriptとSystemJsがバンドルを別々に作る場合、SystemJsはバンドルする必要があるパッケージをどのように知っていますか?私の 'node_modules'に' lodash'をインストールしたとしますが、それは私のすべてのTypeScriptで使われていません。 SystemJsバンドルにも同梱されますか? –