AngularJs 设置多个条件
AngularJs Style multiple conditions
我有一个 ng-repeat,我为每一行设置了不同的颜色,如下所示:
ng-style="{'background': colors[$index % colors.length]}
现在我有要检查的数据:
{{obj.dueInHours}} <= 15 -> 将颜色设置为黄色,{{obj.dueInHours}} <= 5 -> 将颜色设置为红色,否则使用颜色 [$index]
这可能吗?
Br,
图布
ng-style="{'background': obj.dueInHours <= 15 ? 'yellow' : obj.dueInHours <= 5 ? 'red' : colors[$index % colors.length]}
如果项目在 15 小时或更短时间内到期,则颜色为黄色。如果 5 小时或更短时间,则颜色为红色。否则,颜色默认颜色行。
当然,这对 html 来说有点难处理。想象一下,请求是在 100 小时内每个小时都有不同的颜色?您当然不会在 html 中使用它,而是在控制器或指令中使用它。
我的建议是 运行 逻辑一次并设置为作用域上的一个变量,这样每次摘要都不会重新计算值。如果您需要定期检查值,那么您可以 1. 刷新页面 2. 使用 setTimeout 函数根据需要重新计算。
我有一个 ng-repeat,我为每一行设置了不同的颜色,如下所示:
ng-style="{'background': colors[$index % colors.length]}
现在我有要检查的数据: {{obj.dueInHours}} <= 15 -> 将颜色设置为黄色,{{obj.dueInHours}} <= 5 -> 将颜色设置为红色,否则使用颜色 [$index]
这可能吗?
Br, 图布
ng-style="{'background': obj.dueInHours <= 15 ? 'yellow' : obj.dueInHours <= 5 ? 'red' : colors[$index % colors.length]}
如果项目在 15 小时或更短时间内到期,则颜色为黄色。如果 5 小时或更短时间,则颜色为红色。否则,颜色默认颜色行。
当然,这对 html 来说有点难处理。想象一下,请求是在 100 小时内每个小时都有不同的颜色?您当然不会在 html 中使用它,而是在控制器或指令中使用它。
我的建议是 运行 逻辑一次并设置为作用域上的一个变量,这样每次摘要都不会重新计算值。如果您需要定期检查值,那么您可以 1. 刷新页面 2. 使用 setTimeout 函数根据需要重新计算。