リリース候補の前にangularバンドルファイルを提供しました。リリース候補以降、バンドルファイルはありません。angular2とrxjsを含めると、アプリは7秒以上で671リクエストを実行するようになりました。これにより開発が不自由になりました。
angularとrxjsをバンドルしてsystem.configに含める方法を知っている人はいますか?
軽量のプロジェクトを取得するには、 SystemJS Builder または [〜#〜] jspm [〜#〜] をチェックしてプロジェクトをバンドルする必要があります。
シードプロジェクトの例: https://github.com/madhukard/angular2-jspm-seed
@BrunoGarciaはここで非常に素晴らしい情報を提供しました: https://stackoverflow.com/a/37098964/570629
バンドラーを使用する必要があります。
UMDファイル:おそらく最も簡単な解決策です。あなたがこれで見ることができるように 例 。 systemjs構成ファイルでUMDファイルを参照する必要があります(実稼働環境ではあまり役に立ちません)。
System.config({
packages: {
app: {
main: './main.ts',
defaultExtension: 'ts'
},
'@angular/core': {
main: 'core.umd.js',
defaultExtension: 'js'
},
'@angular/compiler': {
main: 'compiler.umd.js',
defaultExtension: 'js'
},
'@angular/common': {
main: 'common.umd.js',
defaultExtension: 'js'
},
'@angular/platform-browser-dynamic': {
main: 'platform-browser-dynamic.umd.js',
defaultExtension: 'js'
},
'@angular/platform-browser': {
main: 'platform-browser.umd.js',
defaultExtension: 'js'
},
rxjs: {
defaultExtension: 'js'
}
}
});
あなたは別の例を見つけることができます(おそらくより良い) ここ !
systemjs-builder + gulp:systemjsを使い続けたい場合は、このソリューションを使用することをお勧めしますが、テストしたところ、時間がかかりましたバンドルを生成するのに30秒かかり、開発にはあまり役立ちません(おそらく私は何か間違ったことをしていました[ほぼ確実に])が、system-builderを使用してアプリケーションをバンドルする方法を確認できます ここ ;
webpack:現在webpackを使用しています。 Webpackにはwebpack-dev-serverと呼ばれる開発ツールがあり、アプリケーションを仮想的にメモリにバンドルして、開発中のプロセスを高速化します(+ホットリロード)。簡単な ビデオチュートリアル こことAngular 2ドキュメント ここ からのより詳細な説明を見つけることができます。webpackを使用するには、インストールする必要がありますwebpack(および必要に応じてwebpack-dev-server)パッケージ:npm i -S webpack webpack-dev-server
、webpack.config.jsファイルを作成し、webpack
バンドルファイルを生成するか、webpack-dev-server --inline
を使用して、変更を加えて再バンドルするサーバーを作成します。--inlineオプションを使用すると、ブラウザウィンドウで自動リロードが有効になります。
// webpack.config.js file
module.exports = {
entry: 'SRC_DIR/main.js',
output: {
path: 'BUILD_DIR',
filename: 'bundle.js'
}
}
次に、bundle.jsファイルをindex.htmlに挿入します:<script src="BUILD_DIR/bundle.js"></script>
これらの最後の2つのオプションを使用すると、index.htmlファイルに手動で含めることができるアプリケーション全体のバンドルを生成できます。
1)gulp-concat
を使用してindex.htmlに含まれるすべてのjsファイルとcssファイルをcon-catします。
2)バンドルangular systemjs.config.js
ファイルに記載されているライブラリとアプリコンポーネント。gulpsystemjs-builder
を使用します。
3)gulp-uglify
を使用してバンドルを縮小します。