javascript - Angular ngclass 没有更新,而被评估的值是

标签 javascript angularjs angular-ui angular-ui-router

所以,我不知道这里发生了什么。要么是极其明显的误会,要么是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 }}" />

JSFiddle

*检查第一个按钮,你会看到类的变化

关于javascript - Angular ngclass 没有更新,而被评估的值是,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28375372/

相关文章:

javascript - 在 JSApi 中获取连接电子邮件和名称时出现 Linkedin 403 禁止错误

javascript - d3 美国 map 缩放加载至标记状态

angularjs - 在有 Angular UI路由器中处理尾部斜杠

angularjs - AngularUI UI 可排序索引更新问题

php - 加载用户在网页上选择的图像

javascript - 计算移动浏览器导航器

javascript - jQuery PreventDefault 并返回 false 不起作用

angularjs - 我如何在 Ionic 2 中使用自定义字体 (ttf-File)?

javascript - Jasmine ,Angular "rootScope.$broadcast"测试

asp.net-mvc - 用于处理 UI、验证和异常管理的 angular js