Avec AngularJS
j'utilise ng-class
la manière suivante:
<div class="bigIcon" data-ng-click="PickUp()"
ng-class="{first:'classA', second:'classB', third:'classC', fourth:'classC'}[call.State]"/>
Je me demande si je peux utiliser l' if-else
expression pour faire quelque chose de similaire à ceci:
<div class="bigIcon" data-ng-click="PickUp()"
ng-class="{first:'classA', second:'classB', else:'classC'}[call.State]"/>
Donc, à chaque fois que call.State
diffère first
ou second
utilise classC
et éviter de spécifier chaque valeur?
ng-class="{'class1': ##condition1## , 'class2': ##condition2## }"
comme vous pouvez le voir dans la question civous pouvez essayer en utilisant une fonction comme celle-ci:
Mettez ensuite votre logique dans la fonction elle-même:
J'ai fait un violon avec un exemple: http://jsfiddle.net/DotDotDot/nMk6M/
la source
J'ai eu une situation où j'avais besoin de deux déclarations `` si '' qui pourraient à la fois devenir vraies et un `` autre '' ou par défaut si aucune n'était vraie, je ne sais pas si c'est une amélioration de la réponse de Jossef mais cela me semblait plus propre:
Lorsque value.one et value.two sont vraies, elles ont priorité sur la classe .else
la source
Clairement ! Nous pouvons créer une fonction pour renvoyer un nom de classe CSS avec l'exemple complet suivant.
CSS
JS
Puis
Vous pouvez vous référer à la page de code complète à ng-class si exemple
la source
Les solutions ci-dessus n'ont pas fonctionné pour moi pour les cours avec des images d'arrière-plan d'une manière ou d'une autre. Ce que j'ai fait, c'est créer une classe par défaut (celle dont vous avez besoin ailleurs) et définir class = 'defaultClass', puis ng-class = "{class1: abc, class2: xyz}"
PS: Les classes qui sont en condition doivent remplacer la classe par défaut c'est-à-dire marquées comme! Important
la source
C'est le moyen le plus fiable et le plus sûr de le faire. Voici un exemple simple et après cela, vous pouvez développer votre logique personnalisée:
la source
Une solution consiste à manipuler une variable de modèle uniquement pour le basculement de classe ng:
Par exemple, je souhaite basculer la classe en fonction de l'état de ma liste:
1) Chaque fois que ma liste est vide, je mets à jour mon modèle:
2) Chaque fois que ma liste n'est pas vide, je mets un autre état
3) Lorsque ma liste n'est jamais touchée, je veux donner une autre classe (c'est là que la page est lancée):
3) J'utilise ce modèle supplémentaire sur ma classe ng:
la source
Utilisez-le de cette façon:
la source
Vous pouvez essayer cette méthode:
Vous pouvez obtenir tous les détails ici .
la source