2016-10-05 5 views
0

내 구성 요소의 템플릿을 다시 컴파일/컴파일하려고합니다. $ onInit을 사용하여 외부 모듈을로드하는 중이고 페이지의 다른 위치로 이동 한 다음 다시 모듈을로드하는 페이지로 돌아 가면 나타납니다.angularJS 구성 요소를 다시 컴파일 하시겠습니까?

나는 아마도 템플릿을 컴파일 할 수 있다고 생각했다. 내가 어떻게 할 수 있는지 알고 있니?


편집 :

내 코드에서 컴파일 사용하는 경우, 아무것도 템플릿 내용이 변수 "templateContent"에있는 경우

controller: { 
$onInit(){ 
this.$ocLazyLoad.load('some.module.js'); 
} 
}, 

template: 
'<p>Sample text here</p>', 

compile: function (tElement, tAttrs) { 
    return function(scope) { 
     scope.widgetCenter = tAttrs.widgetCenter; 
    }; 

} 

답변

2

을 발생하지 않습니다. 아래 그림과 같이 각의 "$ 컴파일"서비스를 사용할 수 있습니다

$compile(templateContent)(scope); 

은 ... here

+0

확인의 예를 찾기 내가 템플릿을 갖고 있다고 할 수 있습니다. $ 컴파일하고 싶습니다. 내 코드에서 어디에서이 코드를 추가해야합니까? 또는 변수를 작성하여 내 템플리트로 참조한 다음 $ compile (variable) (범위)로 참조하는 것이 더 좋습니까? – julesrose

+0

내가 준 예제 링크에서와 같이 지시문에서이 작업을 수행해야합니다. 바이올린이나 샘플 코드를 공유 할 수 있다면 도움이 될 것입니다. 내 대답이 도움이된다고 생각되면 다른 질문을 할 수 있도록 답변을 수락으로 표시하십시오. – superUser

+0

나는 또한 지시어에서 $ compile을 할 수 있다고 읽었지만, 구성 요소를 사용하고 지시문을 사용하지 않고있다. – julesrose

관련 문제