example ejemplos javascript html angularjs ng-class

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 la left ), 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)]"