Maison >interface Web >tutoriel CSS >Comment puis-je appliquer efficacement des classes conditionnelles dans les listes AngularJS ?
Implémentation d'une application de classe conditionnelle dans AngularJS
Problème :
Envisager une application AngularJS rendant un tableau sous forme de liste non ordonnée, l'élément situé à un index spécifique devant afficher une classe personnalisée. Comment y parvenir efficacement ?
Solution :
Pour appliquer dynamiquement une classe basée sur une condition, il existe plusieurs approches :
Utiliser des expressions avec ngClass :
<li ng:class="{true: 'selected', false: ''}[$index == selectedIndex]">...</li>
Ce classique L'approche évalue directement une valeur booléenne, attribuant la classe « sélectionnée » si l'index correspond à la propriété selectedIndex.
Utilisation d'expressions d'objet avec ngClass :
<li ng-class="{selected: $index == selectedIndex}">...</li>
AngularJS permet désormais l'attribution de classes basée sur des expressions d'objet. Chaque nom de propriété représente une classe et sa valeur détermine sa présence.
Mappage des propriétés du modèle aux classes :
<li ng-class="{admin: 'enabled', moderator: 'disabled', '': 'hidden'}[user.role]">...</li>
Cette approche avancée mappe les propriétés du modèle aux noms de classe, offrant la flexibilité d'attribuer des classes en fonction de n'importe quelle condition sans s'appuyer sur ngIf/ngHide.
N'oubliez pas que le choix de l'approche dépend de vos exigences spécifiques et de vos préférences en matière de structure et de maintenance du code.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!