如果jobSet尚未使用表达式选择批准,我正在尝试向元素添加类.
<li class="approvalUnit" ng-repeat="jobSet in dashboard.currentWork" ng-class="{-1:'approved'}[selectedForApproval.indexOf(jobSet)]">
Run Code Online (Sandbox Code Playgroud)
这不是一个简单的方法.关于我应该怎么做的任何建议?
Ste*_*wie 115
您可以使用稍微不同的语法来完成此操作:
ng-class="{'approved': selectedForApproval.indexOf(jobSet) === -1}"
Run Code Online (Sandbox Code Playgroud)
Sla*_* II 15
你不应该用复杂的逻辑重载模板,这是一个不好的做法.记住要始终保持简单!
更好的方法是将此逻辑提取到您的可重用函数$rootScope:
.run(function ($rootScope) {
$rootScope.inArray = function (item, array) {
return (-1 !== array.indexOf(item));
};
})
Run Code Online (Sandbox Code Playgroud)
然后,在您的模板中使用它:
<li ng-class="{approved: inArray(jobSet, selectedForApproval)}"></li>
Run Code Online (Sandbox Code Playgroud)
我想每个人都会同意这个例子更具可读性和可维护性.
| 归档时间: |
|
| 查看次数: |
122619 次 |
| 最近记录: |