앙굴라이스 래클레스 조건

같은 일을 위한 방법도 유지됩니까 표현식에서는 'ng 클래스' 를 조건부?

예를 들어, 나도 날잡아 다음과 같습니다.

<span ng-class="{test: 'obj.value1 == \'someothervalue\''}">test</span>

문제는 이 코드는 테스트, 클래스 '는 항상 obj.value1 뭐라구오 상관없이 적용할 수 있는 요소. 이렇게 하면:

<span ng-class="{test: obj.value2}">test</span>

'가치' 같지 않음 a 클래스에 deltamove obj.value2 트루시 적용되지 않습니다. 이젠 이 문제를 해결할 수 있는 수행여 사례 1:

<span ng-class="{test: checkValue1()}">test</span>

여기서 'checkValue1' 기능은 다음과 같습니다.

$scope.checkValue1 = function() {
  return $scope.obj.value === 'somevalue';
}

나는 그냥 태그일 경우 어떻게 해야 한다 '' ng 클래스 만날 수 있는 것이다. 나는 여기서 사용자 정의 디렉티브을 이와 유사한 기능을 추가로 건설하는 일을 하고 싶다. 하지만, 제가 can& # 39, t 방법을 찾기 위해 제스쳐놀이처럼 표현식에서는 (그리고 어쩌면 그것이 불가능한 이유 및 작동하잖아 이렇게).

이것은 [플네크] [2] 내가 표시하십시오 짓궂군요.

[2]: http://plnkr.co/edit/iSh0t8swDEyGbh7ylZg2? p = 미리봅니다

질문에 대한 의견 (5)
해결책

당신의 첫 견적서 작업 없이 바로 했으나 거의 합니다.

{test: obj.value1 == 'someothervalue'}

이것은 [플네크] (http://plnkr.co/edit/j4r8MDt3Q77NFJlhv7oQ? p = 미리봅니다).

이 모든 표현식에서는 디렉티브을 래클레스 협력합니다 평가되는 트루시 다소 차이가 있지만, 또는 파우시 Javascript 와 일부 유사한 표현식에서는 [here] 읽을 수 있습니다 (http://docs.angularjs.org/guide/expression). 너무 복잡한 조건부 후 반환하는 함수를 사용할 수 있는 경우 또는 파우시 재발했지 트루시 등 자신의 3 번째 시도.

그냥 합니다. 논리 연산자 같은 논리 표현식에서는 형성하는 데 사용할 수도 있습니다.

ng-class="{'test': obj.value1 == 'someothervalue' || obj.value2 == 'somethingelse'}"
해설 (5)

Ng 클래스 δ1 ng 반복하십시오 사용하여

<table>
    <tbody>
            <tr ng-repeat="task in todos"
                ng-class="{'warning': task.status == 'Hold' , 'success': task.status == 'Completed',
              'active': task.status == 'Started', 'danger': task.status == 'Pending' } ">
                <td>{{$index + 1}}</td>
                <td>{{task.name}}</td>
                <td>{{task.date|date:'yyyy-MM-dd'}}</td>
                <td>{{task.status}}</td>
            </tr>
    </tbody>
</table>

각 상태에 타스크리스테우스 다른 클래스에 행일 사용됩니다.

해설 (2)

각 JS ng 클래스 디렉티브을 이 기능을 제공합니다. 또한 동일팔레트에 찼음을 지정할 수 있는 조건부 구분된다. 이 두 가지 방법으로 얻을 수 있습니다.

유형 1

<div ng-class="{0:'one', 1:'two',2:'three'}[status]"></div>

이 코드의 가치를 적용하십시오 클래스용 따르면 상태 값을 받을 수 있다.

        • 클래스용 적용하십시오 한 경우 그 값은 상태 0
        • 값은 상태 1 적용하십시오 경우 다음 두 클래스
        • 값은 2 클래스용 적용하십시오 경우 다음 세 가지 상태

유형 2

<div ng-class="{1:'test_yes', 0:'test_no'}[status]"></div>
    • 상태용 가치가 있는 클래스 신청을 받을 수 있다.

만약 test_yes 클래스용 값은 상태 또는 그런 것이 진정한 1 추가할 예정입니다

만약 test_no 클래스용 그 값은 상태 또는 거짓값 0 추가할 예정입니다

해설 (5)

아주 좋은 사례가 있지만 내가 보고 시작하여 위의 모든 중괄호 (json 매핑해야). 또 다른 옵션은 반환되기를 기준으로 계산 결과. 그 결과 목록니다 css 클래스 이름 (매핑해야 아니라) 될 수도 있습니다. 예:

ng-class="(status=='active') ? 'enabled' : 'disabled'"

또는

ng-class="(status=='active') ? ['enabled'] : ['disabled', 'alik']"

설명: 이 클래스의 경우 상태가 활성인지 활성화됨 '사용됩니다. 그렇지 않으면 클래스의 비활성화됨 '사용됩니다.

' []' 는 사용하여 목록에 사용되는 여러 클래스 (1 안).

해설 (3)

간단한 방법 좁히어 가 있는 경우 다른 클래스 속성 및 대표 / html 로 사용할 수 있습니다. 그렇게 복잡하게 만들 필요가 없습니다. 다음 방법을 됩니다.

<div class="{{expression == true ? 'class_if_expression_true' : 'class_if_expression_false' }}">Your Content</div>

즐거운 코딩, 니만타 페레라

해설 (2)
  • Avamer 수행하는 데 사용할 수 있는 경우 각 구문은 : 연산자입니다 수정자의 *
<div ng-class="{ 'clearfix' : (row % 2) == 0 }">

추가 클레어피스 클래스용 행뿐만 하지 못하고 있다. 그럼에도 불구하고, 어떤 것이든 될 수 있는 상태이며, 이 경우 보통 표현식에서는 true 또는 false 로 평가해야 할 수 있습니다.

해설 (1)

보여주기 위해 갈 수 있는 두 가지 방법으로 무중단으로 ng 클래스 적용하십시오

1 단계

삼항 연산자를 사용하여

<div ng-class="condition?'class1':'class2'"></div>

출력입니다

조건이 true 어졌다면 class1 적용될 경우 다른 요소는 class2 적용됩니다.

단점

조건부 값을 변경할 수 있도록 노력하겠다 때 런타임에 클래스를 짐작이지만요. 변경일 않습니다. 그래서 내아기마저도 제안하세요 가서 경우 같은 동적 클래스 변경 요구 사항에 대한 step2.

2 단계

<div ng-class="{value1:'class1', value2:'class2'}[condition]"></div>

출력입니다

다음 경기를 value1 class1 적용될 경우 찼음을 요소는 적용될 경우 다음 경기를 value2 class2 및 드릴링됩니다. 및 동적 클래스 변경 사항은 이 객체에는 작동합니다.

ᄋ "이번 도움이 될 것이다.

해설 (1)

누군가는 복잡한 논리를 사용하여 좋은 인프라일까요] 를 결정할 수 있는 함수를 ng 클래스 실행하십시오 해당 css 구분된다.

http://jsfiddle.net/ms403Ly8/2/

  • HTML:*
<div ng-app>
  <div ng-controller="testCtrl">
        <div ng-class="getCSSClass()">Testing ng-class using function</div>       
    </div>
</div>
  • CSS:*
.testclass { Background: lightBlue}
  • JavaScript *:
function testCtrl($scope) {
    $scope.getCSSClass = function() {
     return "testclass ";
  }     
}
해설 (2)

<div ng-class="{states}[condition]"></div>

예를 들어 {[2 = 2], 상태는 조건이 true: # 39, & # 39, .& 거짓값: # 39, & # 39 .&;}

<div ng-class="{true: 'ClassA', false: 'ClassB'}[condition]"></div>
해설 (3)

각 2, 이

<div [ngClass]="{'active': dashboardComponent.selected_menu == 'mapview'}">Content</div>
해설 (1)

'핵심' 는 ng 클래스 디렉티브입니다 앙굴라이스. 사용할 수 있는,,,, 어레이입니다 &quot 구체화하십시오 Syntax&quot &quot Syntax&quot &quot 평가하실 Expression&quot "; 세도막 Operator&quot. 및 기타 다양한 옵션이 다음과 같습니다.

래클레스 문자열 구문을 사용하여

이것은 가장 간단한 방법은 래클레스 사용합니다. 각도 변수에 추가하기만 수 있습니다. 그리고 그것은 ng 클래스 클래스를 사용할 수 있는 요소.


<input type="text" ng-model="textType">


<div ng-class="textType">Look! I'm Words!

데모 예를 래클레스 문자열 구문을 사용하여

래클레스 어레이입니다 구문을 사용하여

이는 비슷한 방법을 문자열 구문 외에는 여러 클래스 적용하십시오 수 있습니다.


<input type="text" ng-model="styleOne">
<input type="text" ng-model="styleTwo">


<div ng-class="[styleOne, styleTwo]">Look! I'm Words!

래클레스 평가하실 표현식에서는 사용하여

좀 더 고급 사용하는 방식을 래클레스 (그리고 아마도 가장 방정식입니다 사용할 수 있습니다) 가 평가하십시오 표현식에서는. 이 방법은 에로남이네 'true' 로 평가되는 경우에는 특정한 클래스 변수 또는 표현식에서는 적용할 수 있습니다. 그렇지 않으면 클래스용 won& # 39, t 적용됩니다.


<input type="checkbox" ng-model="awesome"> Are You Awesome?
<input type="checkbox" ng-model="giant"> Are You a Giant?


<div ng-class="{ 'text-success': awesome, 'text-large': giant }">

예를 들면 래클레스 평가하실 표현식에서는 사용하여

래클레스 값을 사용하여

이는 비슷한 방법 외에는 할 수 있는 유일한 가변으로 평가하실 표현식에서는 방금 여러 값을 비교합니다.

<div ng-class="{value1:'class1', value2:'class2'}[condition]"></div>

래클레스 삼항 연산자를 사용하여

이 삼항 연산자를 사용할 수 있게 한 것은 서로 다른 두 클래스를 지정할 경우 표현식에서는 대표, 하나는 거짓값. 다음은 시대에 대한 기본 구문이 작동자:

ng-class="$variableToEvaluate ? 'class-if-true' : 'class-if-false'">

1, 마지막 또는 특정 번호를 평가

'그리피스 사용할 경우 적용할 수 있는' 1 ',' 마지막 '지시문과 클래스뿐만', 또는 특정 번호를 목록 '의' 그리피스 특수한 성질을 사용할 수 있습니다. 여기에는 '$ $ $ $ 홀수입니다', '1', '마지막', '있다', 다른 몇 명과. # 39 의 이러한 here& 사용하는 방법에 대한 예제입니다.


<ul>
  <li ng-class="{ 'text-success': $first }" ng-repeat="item in items">{{ item.name }}</li>
</ul>


<ul>
  <li ng-class="{ 'text-danger': $last }" ng-repeat="item in items">{{ item.name }}</li>
</ul>


<ul>
  <li ng-class="{ 'text-info': $even, 'text-danger': $odd }" ng-repeat="item in items">{{ item.name }}</li>
</ul>
해설 (0)