我们想在由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,bootstrap和tether,
src/system-config.ts
并以某种方式将它们拉入我们的捆绑包中main.ts
?但是考虑到我们不会在应用程序的代码中明确使用它们,这似乎是错误的(例如,不同于moment.js或类似lodash的东西)。