296 votes

AngularJS ng-style avec une expression conditionnelle

Je gère mon problème de cette manière :

ng-style="{ width: getTheValue() }"

Mais pour éviter d'avoir cette fonction côté contrôleur, je préférerais beaucoup faire quelque chose comme ceci :

ng-style="{ width: myObject.value == 'ok' ? '100%' : '0%' }"

Comment puis-je faire cela ?

2voto

HeadAndTail Points 461

Je suis en train d'utiliser ng-class pour ajouter du style :-

 ng-class="column.label=='Description'  ? 'tableStyle':                     
           column.label == 'Markdown Type' ? 'Mtype' : 
           column.label == 'Coupon Number' ? 'couponNur' :  ''
           "

Utilisation de l'opérateur ternaire avec les directives ng-class dans angular.js pour donner du style. Ensuite, définissez le style pour la classe dans le fichier .css ou .scss. Par exemple :-

.Mtype{
       width: 90px !important;
       min-width: 90px !important;
       max-width: 90px !important;
      }
.tableStyle{
         width: 129px !important;
         min-width: 129px !important;
         max-width: 129px !important;
}
.couponNur{
         width: 250px !important;
         min-width: 250px !important;
         max-width: 250px !important;
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X