2014-12-29 4 views
0

난 정말 여기 발생 가 작동하지 않습니다이 plunker각도 지침 겨-경우 대체 : 사실

의 예를 살펴 만이 템플릿

<script type="text/ng-template" id="/showErrors.html"> 
<div>   
    <div data-ng-if="errors"> 
     <p class="alert alert-danger fade-in" data-ng-repeat="error in errors" data-ng-bind="error"></p> 
    </div> 
</div>   
</script> 
작동 모르겠어요

아무도 그 이유를 말할 수 있습니까?

답변

1

때문에 당신은 그 replace: true 실제 지시문 사업부를 설정 한 그것은 DIV 템플릿으로 대체 취득하고 그 attribtes는

<div class="yes" data-ng-if="errors">--------------------- 
                  | 
                  | 
     and your directive div is below      > replaces and attributs are merged 
                  | 
    <div show-errors errors="main.errors"></div> ---------- 

지금 예를 들어 템플릿의 외부 DIV에 클래스를 추가

병합받을 때 에

<div show-errors="" errors="main.errors" 
     class="yes ng-binding ng-scope" data-ng-if="errors">...</div> 

때문에 오류가된다 속성이 머지 후 외부 사업부를 결과 = 진정한 대체 NG-경우 아직 여기에 사용할 수 없습니다 대체 할 때 바깥 쪽 div에 : true; 안에 있습니다

시도는 replace: false으로 잘 동작합니다. 그게 니가 여분의 div를 필요로하는 이유이다

+0

나는 당신이있을 수 있습니다 :)하지만 난 기다리고 있어요 https://gist.github.com/whisher/87fec61f49c66de77e82에서 ng-book 그래서 난 그냥 div 데이터를 볼 것으로 기대 - ng-if = "errors" – Whisher

+0

내가 따라야 할 완전한 코드 나 예제가 아니겠습니까? –

+0

http://plnkr.co/edit/hJSCmRUBGiLq7vF7fsPV 이제 동작이 대체 된 책과 다릅니다. 참인 경우 템플릿 지시문의 첫 번째 요소 인 ..... – Whisher