Peut ngClass utiliser l'opérateur ternaire Angulaire 2?
Angulaire 1, le code ci-dessous fonctionne bien.
<div ng-class="$varA === $varB ? 'css-class-1' : 'css-class-2'">
Mais quand j'essaie de faire la même chose dans Angulaire 2. Il ne fonctionne pas.
J'ai déjà ajouté directives: [NgClass]
<div [ngClass]="varA === varB ? 'css-class-1' : 'css-class-2'">
Comment dois-je écrire dans Angulaire 2, merci!
EDIT: C'était mon erreur, j'ai accidentellement ajouté {
}
à l'ensemble de la varA === varB ? 'css-class-1' : 'css-class-2'
. Donc ngClass encore pouvez utiliser l'opérateur ternaire Angulaire 2.
Vous devez vous connecter pour publier un commentaire.
Oui. Ce que vous avez écrit des œuvres:
Plunker
Le résultat de l'expression sur le côté droit doit correspondre à l'un des suivants:
Vous aviez peut-être une autre erreur dans votre code?
[ngClass]="{message.userId === user._id ? 'message-mine' : 'message-other'}"
, cela ne fonctionne pas. Mais cela fonctionne[ngClass]="{'message-mine':message.userId === user._id, 'message-other':message.userId !== user._id}"
{
et}
.Voir aussi https://angular.io/api/common/NgClass
!==
au lieu de!===
<div [class.css-class-1]="varA === varB" [class.css-class-2]="varA !== varB">
. Aussi loin que je peux dire c'est question de préférence personnelle sur la façon dont vous voulez le faire bien.Vous pouvez essayer ce qui suit.....
Pour l'opérateur ternaire utilisation:
Pour de multiples condition d'utilisation:
thnks...