无法在Angular 2+中比较日期

时间:2018-08-02 18:06:06

标签: html angular date

我有2个约会需要做一些逻辑。第一个日期来自SQL数据库,第二个日期是来自角度的当前日期。 如果SQL日期更早,请应用CSS样式behind,稍后再应用ahead CSS样式,我想在HTML表中显示它们。

我在component.ts中使用的当前日期是:

today: any = Date.now();

我使用ngIf的HTML表是:

<td *ngIf="p.serverDate >= today" class="ahead">{{ p.serverDate | date }}</td>
<td *ngIf="p.serverDate < today" class="behind">{{ p.serverDate | date }}</td>

p是从具有日期的数据库返回的对象。我很确定我有serverDatetoday。我可以同时使用date管道。为什么我不能在这里使用简单的if语句?

更新:我刚刚发现 serverDate的格式为2018-07-24T20:34:48today的格式为1533235371115

1 个答案:

答案 0 :(得分:1)

可能来自MySQL DB的日期可能是字符串。您需要使用新的Date()进行转换。 对于任何日期操作,您可以检查一下moment.js库或date-fns库。为了进行黑白日期比较,请使用https://momentjs.com/docs/中的isBefore()方法。