2017-09-18 21 views
0

나는이 HTML이 :

<div ng-if="true"> 
    <div ng-show="hideMe"> 
     <div class="random" ng-include="'template.html'"></div> 
    </div> 
    </div> 

    <br> 
    <button ng-click="hideMe = false">hide</button> 
    <button ng-click="hideMe = true">show</button> 

을 그리고 나는이 스타일이 있습니다

.random.ng-enter { 
    transition: 2s ease all; 
    opacity: 0; 
    transform: translateY(100%); 
} 

.random.ng-enter.ng-enter-active { 
    opacity: 1; 
    transform: translateY(0); 
} 

.random.ng-leave { 
    transition: 10s ease all; 
    opacity: 1; 
    transform: translateX(0); 
} 

.random.ng-leave.ng-leave-active { 
    opacity: 0; 
    transform: translateX(50%); 
} 

템플릿 :

<p>a simple paragraph</p> 

<div ng-repeat="user in info"> 
    {{user.nome}} 

</div> 

먼저 페이지를로드하고 ng-enter-active는 완벽하게 작동하지만 버튼을 숨기거나 표시 할 때 ng-enter 및 ng-leave는 작동하지 않습니다. 내가 아는 사람이 누구인지 아시겠습니까?

고맙습니다.

여기 방금 노출 한 것을 보여주는 플 런커가 있습니다.

DEMO

+0

당신이 당신의 문제에 대해 더 정확하게 할 수있는 NG-경우에해야 요소와 함께 사용되어야한다 임의? template.html –

+0

의 콘텐츠를 방금 추가 한 경우 유용합니다. 그것은 모두 plunker에 있어요. 기본적으로 내가 숨기기 또는 표시를 누르면 구성을 떠맡게하고 ng-leave 및 ng-enter를 설정합니다. –

+0

답변이 정확한 것으로 플래그를 지정하는 것을 잊지 마세요;) –

답변

2

편집하면 HTML과 같습니다 :

<div ng-if="true"> 
    <div ng-if="hideMe" class="random"> 
     <div ng-include="'template.html'"></div> 
    </div> 
    </div> 

이 작동합니다.

클래스 이/숨기기를 표시하고

+0

대단히 감사합니다! 나는 그것이 ng-if와 같은 요소에 있어야한다는 것을 몰랐다. –