2017-01-30 5 views
0

저는 주니어 개발자입니다. 제가 만들고있는 툴바를 구현하는 올바른 방법을 찾고 있습니다.
현재 내 응용 프로그램을 가지고, 다양한 수준에서 작동 :
부분 레이아웃의 각도 도구 모음

응용 프로그램 - 각 응용 프로그램
여러
app.sub 수준의 루트 (S) - nestation의 다른 수준.

포인트가 좀 부분적인 견해를 가지고있는 응용 프로그램 모듈 (그들이 도구 모음되는 일)에, 내 추상적 인 응용 프로그램 상태의 관점에서 내 컨트롤러에서 해결. 내가 원하는 무엇


내 컨트롤러에서 (예를 들어, 성상은 "삭제"버튼) 내 app.sub 수준의 상태에 따라 (.STATE를) 버튼의 동작을 변경하는 것입니다

옳은 방법은 무엇일까요?
$ rootScope을 사용하는 것에 대해 읽었습니다. 이해가되지 않는 한, 제안되지 않았을 것입니다. 실제로는 글로벌 변수에 가깝기 때문입니다.
서비스 사용에 대해서도 읽었지만 서비스 변수를 변경하면 서비스가 변경되지 않습니다.

이렇게하려면 올바른 방법이 있습니까?
미리 감사드립니다. 긴 게시물에 대해 유감스럽게 생각합니다. 가능한 한 잘 설명하려고합니다!

편집 : 내가 너무 버튼에 다른 동작을 할당해야 (모두 NG-REF 및 전체 기능) 외관

답변

0

, ng-class를 사용합니다. 이 예제는 버튼 클래스를 설정합니다

<button ng-class="{dull: sub-level.state==0, shiny: sub-level.state!=0}"> 
</button> 

: 예를 들어 dullsub-level.state 0, 및 shiny 그렇지 않은 경우. 이러한 클래스는 CSS에서 정의해야합니다.

sub-level.state은이 예제에서 액세스 가능한 변수가 $scope 일 필요가 있습니다. (즉, 해당 컨트롤러에 $scope.sub-level.state이 있어야 함)

이것은 버튼 모양에만 영향을 미칩니다. 실제로 표현식에 따라 사용하지 않으려면 ng-disabled을 조사하십시오.

+0

사실, 때로는 다른 행동을 할당해야하기 때문에 대상 경로 또는 수행 할 작업을 변경하기 위해 일부 변수를 전달해야합니다. 죄송합니다. ambiguos 일 경우 답변 해 주셔서 감사 드리며 도움이 될 것입니다. – Tails128