Angularjs 未应用ng类

Angularjs 未应用ng类,angularjs,ng-class,Angularjs,Ng Class,我有一个文本区,其中包含一条要发布的消息,还有一个包含可用字符数的范围 <textarea name="" cols="" rows="" maxLength="{{maxMessageLength}}" ng-model="messageText"/> <div id="chatmessage-buttons"> <a ng-click="sendMessage()"><span>Invia</span&

我有一个文本区,其中包含一条要发布的消息,还有一个包含可用字符数的范围

<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>          

因维亚
{{maxMessageLength-messageText.length}
messageText
maxMessageLength
messagelengthertshold
都是在
$scope
中定义的,当我在文本区域中插入文本,更改
messageText.length
的值时,范围内的计数器会正确更新

但是,无论
messageText
中包含的值是多少,css类
message length
message length alert
都不会应用于my span

我还尝试删除对
消息长度警报的检查
,将ng class属性保留为
{message length:true}
,但它仍然没有应用


我缺少什么?

尝试将类名用引号括起来。而不是:

ng-class="{message-length-alert: (messageText.length > messageLengthAlertTreshold), message-length: true}
尝试:


这是因为哈希键必须是字符串或类似于名称的变量。

如果类名中有连字符,则只需将类名用引号括起来。否则你就不需要这个了。
ng-class="{'message-length-alert': (messageText.length > messageLengthAlertTreshold), 'message-length': true}