我使用Angular CLI 6,angularfire2和firebase。
我想比较两个日期:StartDate和EndDate。
用英语,如果开始日期的月份和年份= EndDate的月份和年份,则不显示结束日期。
我尝试这样:
component.html:
<mat-list *ngIf="compareDates()">({{ ppsToDisplay?.datefin | date:'MMMM y'}})
Component.ts
compareDates(): boolean {
return this.datePipe.transform(this.ppssToDisplay.datefin, 'MM-yyyy') ===
this.datePipe.transform(this.ppssToDisplay.datedebut, 'MM-yyyy');
}
在这里,我无法编写打字稿来考虑管道。谢谢您的帮助
最佳答案
您可以如下编写您的compareDates
:
sameDates(): boolean {
return datePipe.transform(this.StartDate, 'MM-yyyy') ===
datePipe.transform(this.EndDate, 'MM-yyyy');
}
您将必须在组件构造函数中注入DatePipe。
constructor(private datePipe: DatePipe)
另外,您必须将
DatePipe
添加到组件的提供程序列表中@Component({
selector: 'my-app',
template: `
<div>
</div>
`,
providers: [DatePipe]
})
您将必须在应用程序模块中导入angular common模块。
import { DatePipe, CommonModule } from '@angular/common'
...
@NgModule({
imports: [..., CommonModule, .... ],
...