2016-07-05 18 views
11

Ich habe die folgende Vorlage tun:Angular2 ein anderes mit ngClass

<p [ngClass]="{checked: condition, unchecked: !condition}"> 

Während dies funktioniert, finde ich es ein bisschen hässlich, wie ich habe zweimal um den Zustand zu wiederholen. Gibt es eine Möglichkeit, so etwas wie: [ngClass]={condition ? checked : unchecked} (was nicht funktioniert)

Dank

Antwort

32

Tat

<p class="{{condition ? 'checked' : 'unchecked'}}"> 

oder

<p [ngClass]="condition ? 'checked' : 'unchecked'"> 

oder

<p [ngClass]="[condition ? 'checked' : 'unchecked']"> 
+0

Es funktioniert, aber ich bin sehr verwirrt, ist ngCla ss dann nutzlos? – Scipion

+2

'[ngClass] =" condition? 'Checked': 'unchecked' "sollte auch funktionieren. –

+0

@ Scipion NR. Sie müssen nur die richtige Situation finden, um es zu benutzen, siehe [this] (http://stackoverflow.com/questions/30283771/ng-class-in-angular2/36199294#36199294) für alle möglichen Fälle. –