我在ng-style
的上下文中遇到ng-disabled
和ng-repeat
的奇怪问题。我有以下模板......
<li ng-repeat="value in currentFacet.values track by $index">
{{ showAll }}
<input type="checkbox" ng-model="options[$index]" ng-true-value="'{{ value.label }}'" ng-checked="value.isActive" ng-disabled="showAll"/>
<span ng-style="showAll ? {color:'gray'} : {}">{{ value.label }}</span>
</li>
生成一个复选框列表。有一个showAll
布尔值可以禁用所有这些复选框。
最初当页面加载时,ng-style
和ng-disabled
似乎评估布尔值是否为真...即使我查看布尔值的当前状态(这就是为什么{{ 1}}在那里)它是假的。
如果我将布尔值更改为true然后再返回false,则功能将按预期工作。只有在初始页面加载时才会发生这种不道德的行为。
答案 0 :(得分:1)
检查showAll的类型一次,我假设它最初是字符串。这就是为什么条件在负载下工作正常的原因。 if('false')为真。