私たちは、angular-cli 1.0.0-beta.5(w / node v6.1.0)で生成されたアプリでブートストラップ4(4.0.0-alpha.2)を使用したいと思います。
npmでブートストラップとその依存関係を取得した後、最初のアプローチはそれらをangular-cli-build.js
次の場所に追加することでした。
'bootstrap/dist/**/*.min.+(js|css)',
'jquery/dist/jquery.min.+(js|map)',
'tether/dist/**/*.min.+(js|css)',
にインポートします index.html
<script src="vendor/jquery/dist/jquery.min.js"></script>
<script src="vendor/tether/dist/js/tether.min.js"></script>
<link rel="stylesheet" type="text/css" href="vendor/bootstrap/dist/css/bootstrap.min.css">
<script src="vendor/bootstrap/dist/js/bootstrap.min.js"></script>
これは問題ng serve
なく動作しましたが、-prod
フラグ付きのビルドを作成するとすぐに、これらの依存関係はすべてなくなりましたdist/vendor
(驚き!)。
angular-cliで生成されたプロジェクトでこのようなシナリオ(つまり、ブートストラップスクリプトの読み込み)をどのように処理することを意図していますか?
次のような考えがありましたが、どちらに進むべきか本当にわかりません...
CDNを使用しますか?しかし、これらのファイルが利用可能になることを保証するために、むしろこれらのファイルを提供します
依存関係を
dist/vendor
私たちの後にコピーしますng build -prod
か?しかし、ビルド部分を「処理する」ので、angular-cliが提供するもののように思えますか?jquery、ブートストラップ、テザーを追加し
src/system-config.ts
、どういうわけかそれらをバンドルに追加しmain.ts
ますか?しかし、アプリケーションのコードでそれらを明示的に使用しないことを考えると、それは間違っているように見えました(たとえば、moment.jsやlodashのようなものとは異なります)。