2016-10-18 2 views
2

angular2 애플리케이션에서 작업하면서 공개 콘텐트 및 관리 콘텐트에 대해 다른 스타일을로드 할 수 있기를 원했습니다. 그러나 전체 URL을 사용하여 외부 소스에서로드 스타일에 필요한 임의의 다른 구성이, 각도가 외부 소스 예상대로 작동하지 않는 코드 위Angular2 styleUrls 외부 스타일을로드하지 않음

@Component({styleUrls:["http://url_to_external_styles"]}) 

에서로드 스타일을 무시하는 것 같다? 구성 요소를 기준으로 스타일을로드하면 콘텐츠 서버에서로드하는 데 더 많은 관심이 있지만 100 % 작동합니다.

답변

5

당신은 구성 요소의 뷰 캡슐화 해제해야합니다 형태의 그 점점 오류의

@Component({ 
    styleUrls:["http://url_to_external_styles"], 
    encapsulation: ViewEncapsulation.None 
}) 

https://angular.io/docs/ts/latest/guide/component-styles.html#!#view-encapsulation

+0

필자는 뷰 캡슐화를 그림자 DOM의 사용을 제어하는 ​​수단으로 이해했으며 스타일을 부모에서 하위 구성 요소로 유출 할 수있게했습니다. 그럼에도 불구하고 상대 경로 애셋/path_to_css를 사용하여 스타일을로드했습니다. 그들은 예상대로로드합니다. 단, node_modules/...에서로드 된 awesome 글꼴을 제외하고 멋진 글꼴은로드되지만 아이콘은 렌더링되지 않습니다. 목표 : 공용 모듈과 관리 모듈 모두에 하나의 index.html을 사용하여 서로 다른 스타일을 사용하려고 시도하고 있는데, 머리에 직접 쓸 수있는 JavaScript 해킹이 발생하지 않습니다. – iswak

+0

@iswak는 여전히 위의 문제 중 일부입니까? 예제를 게시 할 수 있습니까? – smiggle

+0

나는 별도의 스레드에 질문을했습니다 http://stackoverflow.com/questions/40126234/angular2-best-way-to-handle-public-and-admin-application-one-app-or-multiple-ap 중 하나에 관한 응용 프로그램입니다. CMS 및 Admin 시스템 모두에 해당하는 앱입니다. 두 가지 각도로 적용하는 것이 가장 바람직하다고 생각하기 시작했습니다. 유지 관리가 줄어들고 스타일 관리 및 복잡성이 제거됩니다. ... 도움을 주셔서 감사합니다. 새로운 질문에 귀하의 생각을 공유 할 수 있기를 바랍니다. – iswak

3

를 "모듈을 찾을 수 없습니다 : 오류 : 확인할 수 없습니다 './the- URL-의-AN-외부 스타일 시트 '', 여기에 나를 위해 일한 내용은 다음과 같습니다

:

여기

Angular documentation이 styleUrls 배열의 URL에 대한 말을하는거야

The URL is relative to the application root, which is usually the location of the index.html web page that hosts the application.

스타일 시트를로드하려면 로컬 CSS 스타일 시트를 만들고 @ import 문을 맨 위에 추가하십시오. 예를 들어, "http://url_to_external_styles"에 스타일 시트를 추가하려면 src/app/my-component.component.css 파일을 만들 수 있습니다. 그럼 당신은 SRC/응용 프로그램/내 - component.component.css의 첫 번째 줄에 다음을 추가 할 수 있습니다 : 당신은 위에 인용 한 각 문서의 링크를 따라 @import에 대한 자세한 내용을 찾을 수 있습니다

@import "http://url_to_external_styles"; 

.

관련 문제