javascript - example - ng-class angularjs ejemplos
Clase ng angular si otra cosa (3)
Puede utilizar la notación del operador ternario:
<div id="homePage" ng-class="page.isSelected(1)? ''center'' : ''left''">
Me gustaría saber cómo hacer para crear la False ng-class.
page.isSelected (1) es TRUE si la página está seleccionada, de lo contrario FALSE
<div id="homePage" ng-class="{ center: page.isSelected(1) }">
Por lo tanto te quiero si
isSelected es VERDADERO: center
isSelected es FALSE: izquierda
Lo intenté:
<div id="homePage" ng-class="{ page.isSelected(1) ''center : ''left'' }">
pero no funciona.
No sé lo que estoy haciendo mal. ¿Puedes ayudarme por favor?
Solo haga una regla para cada caso:
<div id="homePage" ng-class="{ ''center'': page.isSelected(1) , ''left'': !page.isSelected(1) }">
O usa el operador ternario:
<div id="homePage" ng-class="page.isSelected(1) ? ''center'' : ''left''">
Tanto ryeballar''s respuesta de John Conde como la de ryeballar''s son correctas y funcionarán.
Si quieres ponerte demasiado geek:
John''s tiene la desventaja de que tiene que tomar dos decisiones por $ bucle de resumen (tiene que decidir si agregar o quitar el
center
y tiene que decidir si agregar o quitar laleft
), cuando claramente solo se necesita una.Ryeballar confía en el operador ternario que probablemente se eliminará en algún momento (porque la vista no debe contener ninguna lógica). (No podemos estar seguros de que se eliminará y probablemente no será pronto, pero si hay una solución más "segura", ¿por qué no?)
Entonces, puedes hacer lo siguiente como alternativa:
ng-class="{true:''center'',false:''left''}[page.isSelected(1)]"