Angularjs 将此多个条件转换为ng类条件
您好,我需要帮助将这个带有“或”条件的“if-else”转换为可以在ng类中使用的条件 这是我的ng类,有条件,但工作不正常Angularjs 将此多个条件转换为ng类条件,angularjs,ng-class,Angularjs,Ng Class,您好,我需要帮助将这个带有“或”条件的“if-else”转换为可以在ng类中使用的条件 这是我的ng类,有条件,但工作不正常 <span ng-class="{'green': work > toWork, 'red': work < toWork, 'black': work == toWork || overall == '-'}"> {{overall = showMonthly(work
<span ng-class="{'green': work > toWork,
'red': work < toWork,
'black': work == toWork || overall == '-'}">
{{overall = showMonthly(work = (workers | getMonthValue: dts.value),
toWork = getMonthlyToWork(member.id, dts.value))}}
</span>
{{total=showmonly(work=(workers | getMonthValue:dts.value),
toWork=getMonthlyToWork(member.id,dts.value))}
这是我想申请的条件:
if (work > toWork) {
return "green";
}else if (work < toWork) {
return "red";
}else if (work == toWork || overall == "-") {
return "black";
}
if(工作>工作){
返回“绿色”;
}否则如果(工作<工作){
返回“红色”;
}否则,如果(工作==toWork | |总体==“-”){
返回“黑色”;
}
...
看看这个。(您的条件语句中缺少一个拼写)
快乐编码 不需要使用ng类,只需将逻辑放入
$scope
中的方法中,如下所示
$scope.getClass = function(work, toWork, overall){
if (work == toWork || overall == "-"){
return "black";
}else if (work < toWork) {
return "red";
}else if(work > toWork) {
return "green";
}
}
$scope.getClass=函数(工作、工作、总体){
如果(工作==toWork | |总体==“-”){
返回“黑色”;
}否则如果(工作<工作){
返回“红色”;
}否则如果(工作>工作){
返回“绿色”;
}
}
在你看来,就这样称呼它吧
<span class="{{getClass(work, toWork, overall)}}"></span>
它可以工作,但是如果输出是“-”虚线,它的颜色是红色而不是黑色。这是因为工作
,不是吗?您的标记中存在一些不确定性,因此为什么不在Codepen或jsBin等上进行快速采样呢?请向showMonthly
函数解释第一个参数。(workers | getMonthValue:dts.value)
的预期结果是什么?那个表达式在做什么?条件有问题。什么时候才能达到测试total==“-”
?如果返回值为零“0”,则该方法将在它测试的伪代码work==toWork
中返回“-”。在HTML中,它测试work==0
。你的意图是什么?更新了答案,现在可以通过参数获得这些答案,试试看,OPs条件有问题。什么时候才能达到测试total==“-”
?它应该在if块中,而不是在else if块中
<span class="{{getClass(work, toWork, overall)}}"></span>