Angular 1.5中基于比较日期的条件样式



我正在尝试将Angular列表元素(task.task_deadline_date(与今天的日期进行比较,如果是今天或更晚(在今天之前保持常规字体(,则将日期加粗。我已经测试了以下语法,但我认为问题是比较日期,有没有办法设置一致的格式?

<td 
class="min-wth-100" 
ng-style="{'font-weight':(task.task_deadline_date >= new Date()) ? 'bold' : '' }"
>
{{::task.task_deadline_date}}
</td>

我在下面的链接中尝试了这个方法,但试图将其调整为一行,而不是必须向控制器添加代码。不确定管道是否是一致设置日期格式的一种方式?

Angular:如何通过在条件中使用日期管道来有条件地应用样式?

像这样比较日期它将返回真/假

let task_deadline_date = '2012-03-19T07:22Z';
console.log(new Date(task_deadline_date) >= new Date())

//在您的情况下,新日期(task.task_deadline_Date(>=新日期((

我最终在控制器脚本中添加了一个函数:

rept.checkDate = function(date) {
return new Date(date) >= new Date();
};

然后将HTML更改为:

<td class="min-wth-100" ng-style="rept.checkDate('{{task.task_deadline_date}}') && {'font-weight':'bold'} || {'font-weight':''}">{{::task.task_deadline_date}}</td>

我希望有一个单行选项,但哦,好吧。谢谢你的帮助。

最新更新