이것은 달성하려는 전환을 사용하여 ng-class
애니메이션의 매우 단순화 된 데모입니다.ng-class 기반 ng-animate 전환이 작동하지 않는 이유는 무엇입니까?
항목을 선택하면 애니메이션에서 간단한 페이드를 만들려고합니다.
항목을 선택하면 ng-class
지시어를 사용하여 selected
클래스가 추가됩니다. 애니메이션 후크 클래스가 ng-animate
으로 추가 된 documentation 다음에 전환을 추가하려고합니다.
아래 코드는 제가 지금까지 가지고있는 코드입니다. 전환 속성과 함께 opacity
을 0
으로 설정하고 .selected-add-active
클래스가 추가되면 opacity
1로 전환해야합니다. 그러나 작동하지 않습니다.
angular.module('demo', ['ngAnimate'])
.controller('demoCtrl', function($scope) {
$scope.selected = false;
$scope.selectToggle = function() {
$scope.selected = !$scope.selected;
};
});
.item {
width: 50px;
height: 50px;
background: grey;
}
.item.selected {
background-color: dodgerblue;
}
.item.selected.selected-add {
transition: opacity 3s;
opacity: 0;
}
.item.selected.selected-add.selected-add-active {
opacity: 1;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.7/angular.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.7/angular-animate.js"></script>
<div ng-app="demo" ng-controller="demoCtrl">
<div class="item" ng-class="{selected:selected}"></div>
<br>
<br>
<button ng-click="selectToggle();">
{{selected? 'Unselect' : 'Select'}}
</button>
</div>
왜 내 코드가 작동하지 않습니다?