【发布时间】:2018-04-10 11:55:27
【问题描述】:
在这里,我想在 div 中传递一个条件,当它包含某个数字时,显示某种颜色。
条件是:
if (num >= -100.0 && num <= -35.0) {
return '#f1403b';
} else if (num > -35.0 && num <= 35.0) {
return '#ffc200';
} else {
return '#34A853';
}
app.component.html
---------------------
<div [ngStyle]="{'color': (num >= '-100.0' && num <= '-35.0' ) ? '#f1403b' : ( (num > '-35.0' && num <= '35.0') ? '#ffc200' :'#34A853')
}">
({{num}})
</div>
【问题讨论】:
-
为什么要内联呢?只需将该逻辑放在组件类中并通过
get访问器公开它。 -
我的要求是通过具有上述条件的内联 css。如果可以,请帮忙。
-
但是你为什么要内联写它?!这个要求从何而来?您最终会在模板中得到一个非常复杂的表达式,而这完全没有必要 - 可以通过其他更易读的方式实现相同的功能。
-
请不要一遍又一遍地重复同样的事情。 为什么?为什么特别是您想尝试将这一切都塞进模板中?你试过什么,它到底有什么问题?为什么不像 Günter 和我建议的那样只使用字段?
-
@ManzerHashmi 并不是你不想要最好的。这是您专门向这里的专家询问如何以可怕,糟糕的方式做事,并且拒绝给出合理的理由。在这里回答的人为他们所做的事情感到自豪,并且不会建议您以如此可怕的方式做事。所以你可以假设这是不可能的,然后继续解决一个真正的问题。