所以,我不知道这里发生了什么。要么是极其明显的误会,要么是ui-router和ng-class之间的bug。我的模板看起来像这样(使用 Jade 语法):
button.back(ng-class="{ 'hidden': {{'index.blog.article' | isState}} }") back ){{'index.blog.article' | isState}})
在实时 View 中,当状态“index.blog.article”未激活时,您会看到:
<button ng-class="{ 'hidden': false }" class="back ng-binding"> back false</button>
如您所料。但是,当状态处于事件状态时,您会看到:
<button ng-class="{ 'hidden': true }" class="back ng-binding"> back true</button>
除了类实际上没有改变。那么,模板中的值得到了更新,但是 ng-class 没有得到评估?给了什么?
最佳答案
出于某种原因,我不是 100% 确定为什么,但是 <button>
标签不会更新类,<input type="button">
也不会。 .解决这个问题的方法是用你绑定(bind)的任何东西来声明这个类,比如
<button ng-class="{ hidden: true, unHidden: false }" class="{{ index.blog.article }}" />
*检查第一个按钮,你会看到类的变化
关于javascript - Angular ngclass 没有更新,而被评估的值是,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28375372/