*ngIf 固定日期
*ngIf with Fixed Date
如何在 *ngIf 调用中比较可变日期和固定日期。
在我的 .ts 文件中,我有:
public _dateFrom: Date;
然后,我试过了,它产生了一个编译器错误:
<div *ngIf="_dateFrom >= (new Date('12/1/2010'))">
</div>
也试过同样的问题:
<div *ngIf="_dateFrom >= (new Date(2010,12,1))">
</div>
如有任何帮助,我们将不胜感激。
Angular 模板不允许创建变量。您可以尝试在控制器中创建一个函数并 return 进行比较。
还有两点需要注意:
- Javascript 中的月份为零索引。所以你可能实际上是指 2010 年 12 月 1 日
(2010, 11, 1)
。
- 最好是比较
getTime()
方法的值,而不是直接比较日期对象。
尝试以下方法
控制器
isOldThan(year: number, month: number, date: number) {
return this._dateFrom.getTime() >= (new Date(year, month, date)).getTime();
}
模板
<div *ngIf="isOldThan(2010, 11, 1)">
</div>
如何在 *ngIf 调用中比较可变日期和固定日期。
在我的 .ts 文件中,我有:
public _dateFrom: Date;
然后,我试过了,它产生了一个编译器错误:
<div *ngIf="_dateFrom >= (new Date('12/1/2010'))">
</div>
也试过同样的问题:
<div *ngIf="_dateFrom >= (new Date(2010,12,1))">
</div>
如有任何帮助,我们将不胜感激。
Angular 模板不允许创建变量。您可以尝试在控制器中创建一个函数并 return 进行比较。
还有两点需要注意:
- Javascript 中的月份为零索引。所以你可能实际上是指 2010 年 12 月 1 日
(2010, 11, 1)
。 - 最好是比较
getTime()
方法的值,而不是直接比较日期对象。
尝试以下方法
控制器
isOldThan(year: number, month: number, date: number) {
return this._dateFrom.getTime() >= (new Date(year, month, date)).getTime();
}
模板
<div *ngIf="isOldThan(2010, 11, 1)">
</div>