2017-05-10 3 views
0

저는 angular-cli를 사용하여 angular2 어플리케이션을 작성했습니다. 내가 같은 구조를 따라 - 전역 스타일은 각-cli.json에 지정된 styles.scss에 넣어/수입 -> 스타일 : [] - 각 구성 요소는 모든 것이 작동 자체 SCS들이있을 것이다 미세각도 2 CSS 스타일

그러나 응용 프로그램을 빌드하고 실행할 때 해당 스타일이 인라인 스타일로 변환되어 기본 html 파일 (index.html)의 헤더에 삽입된다는 말을 들었습니다. 응용 프로그램을 실행하는 동안 index.html을 검사하고 많은 인라인 스타일 섹션이 삽입되어 있음을 확인했습니다. 또한 사람들은 솔루션이 하나의 CSS 파일에 모두 들어있어 index.html에 링크를 넣었습니다. 그 큰 CSS 파일은 다운로드 및 캐싱, 사용자에게 다음 사용을 위해 더 빠른 로딩 성능을 제공합니다. 그러나이 솔루션으로 설계된 angular2 응용 프로그램은 거의 볼 수 없지만, 내가 알고있는 이유가 있어야합니다. 누구든지 설명을 제공하십시오.

답변

0

모든 것이 컴파일 유형에 관한 것 같습니다. AOT (Ahead Of Time)와 JIT (Just In Time)가 있습니다. 나는 당신이 그것에 관하여 대략 angular 2 cookbook에 읽을 것을 제안 할 것이다. 그들은 정말로 그것을 멋지게 묘사했다.

실제로는 단 하나의 각도 컴파일러가 있습니다. AOT와 JIT의 차이점은 타이밍과 툴링의 문제입니다. AOT를 사용하면 컴파일러는 한 세트의 라이브러리를 사용하여 빌드시 한 번 실행됩니다. JIT를 사용하면 런타임마다 다른 라이브러리 세트를 사용하여 모든 사용자가 실행할 수 있습니다.

각도 제작자는 JIT를 개발 및 AOT 제작에 사용할 것을 제안합니다.

오늘 AOT 컴파일 및 트리 떨림은 개발에 실제보다 더 많은 시간이 걸립니다. 그것은 곧 바뀔 것입니다. 현재로서는 개발 환경에서 JIT를 컴파일하고 프로덕션 환경에 배포하기 전에 AOT 컴파일로 전환하는 것이 가장 좋습니다.