AngularUI의 라우팅을 사용하고 있는데,하고 싶지만 이와 같은 ng-class="{active: current.state}"
지시문에서 현재 상태를 정확히 감지하는 방법을 잘 모르겠습니다.
답변:
최신 정보:
이 답변은 Ui-Router의 훨씬 오래된 릴리스에 대한 것입니다. 최신 릴리스 (0.2.5+)의 경우 helper 지시문을 사용하십시오 ui-sref-active
. 자세한 내용은 여기 .
원래 답변 :
컨트롤러에 $ state 서비스를 포함합니다. 이 서비스를 범위의 속성에 할당 할 수 있습니다.
예 :
$scope.$state = $state;
그런 다음 템플릿에서 현재 상태를 가져 오려면 :
$state.current.name
상태가 현재 활성 상태인지 확인하려면 :
$state.includes('stateName');
이 메서드는 상태가 중첩 된 상태의 일부인 경우에도 포함 된 경우 true를 반환합니다. 중첩 상태에 있고을 user.details
확인한 $state.includes('user')
경우 true를 반환합니다.
클래스 예제에서 다음과 같이 할 수 있습니다.
ng-class="{active: $state.includes('stateName')}"