angular-cli 1.0.0-beta.5 (w / 노드 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와 같은) 잘못된 것으로 보였습니다.