0
내 컨트롤러의 변수가 변경 될 때 ng-class를 업데이트하고 싶습니다. 어떤 이유로 인해 페이지로드시에만 트리거되고 변수가 변경되는 동안 ng 클래스는이를 반영하여 업데이트되지 않습니다. 제어기에서 해당 코드 여기변수가 변경되면 각도 ng-class를 업데이트하는 방법은 무엇입니까?
<div class="right-menu__user"
ng-class="{
'animate': true,
'animate--leave': !isRightMenuOpen}">
{{user.firstName}} {{user.lastName}}
</div>
된다 : 여기
<a class="cs-mobile-menu__close-icon" ng-click="switchMobileMenu('right')">
</a>
는 I 변수에 따라 변경할 코드 : 여기
변수 변경을 트리거 코드 :
$rootScope.isLeftMenuOpen = false;
$rootScope.isRightMenuOpen = false;
$scope.switchMobileMenu = function(direction) {
if (direction === 'left') {
$scope.isLeftMenuOpen = !($scope.isLeftMenuOpen);
} else {
$scope.isRightMenuOpen = !($scope.isRightMenuOpen);
}
};
ng-class는 초기에만 설정되어있는 것으로 보입니다.. $scope.apply()
함수에서 위의 함수를 래핑하여 ng-class
이 변경 사항을 감시하고 ng-click
이 변수를 토글하므로 적용해야한다고 생각합니다. 나는 올바른 길을 가고 있는가? 그렇다면 어떻게해야합니까?
'$ rootScope'을'$ scope'로 바꾸면 제대로 작동합니까? – Akis