angularjs - llenar - clase ng no se aplica
ng-options value (1)
Tengo un área de texto que contiene un mensaje que debe publicarse y un lapso con la cantidad de caracteres disponibles.
<textarea name="" cols="" rows="" maxLength="{{maxMessageLength}}" ng-model="messageText"/>
<div id="chatmessage-buttons">
<a ng-click="sendMessage()"><span>Invia</span></a>
<span ng-class="{message-length-alert: (messageText.length > messageLengthAlertTreshold), message-length: true}">{{maxMessageLength - messageText.length}}</span>
</div>
messageText
, maxMessageLength
y messageLengthAlertTreshold
están definidos en $scope
, y el contador dentro del intervalo se actualiza correctamente cuando inserto texto en el área de texto, cambiando el valor de messageText.length
.
Sin embargo, ni la message-length
clase css ni la message-length-alert
message-length
message-length-alert
se aplican nunca a mi intervalo, independientemente del valor contenido en messageText
.
También intenté eliminar la comprobación de message-length-alert
de message-length-alert
dejando el atributo ng-class con solo {message-length: true}
, pero no se aplica de todos modos.
¿Qué me estoy perdiendo?
Trate de envolver el nombre de la clase entre comillas. En lugar
ng-class="{message-length-alert: (messageText.length > messageLengthAlertTreshold), message-length: true}
Tratar
ng-class="{''message-length-alert'': (messageText.length > messageLengthAlertTreshold), ''message-length'': true}
Se debe a que la clave hash debe ser una cadena o un nombre similar a una variable. (Lo siento por mal inglés)