我如何等待2个dateChange事件并执行一个函数

问题描述 投票:1回答:1

我有2个MatDatepickers用于开始和结束日期,我正在dateChange上触发searchFilter函数,如下所示:

<input matInput [matDatepicker]="picker" placeholder="Start date" 
(dateChange)="searchFilter($event.value)">

<input matInput [matDatepicker]="picker2" placeholder="End date" 
(dateChange)="searchFilter($event.value)">

如果两个都被触发,我需要将searchFilter应用于事件数据。我是Observables的新手。我知道我可以用来等待2个observable的zip方法,但是我怎么能专门拉链这些和这些事件呢?有一个更好的方法吗?

angular angular-material
1个回答
0
投票

您可以使用NgModel指令创建模板驱动的表单。

<input matInput [matDatepicker]="picker" placeholder="Start date"[(ngModel)]="this.startDate"(dateChange)="searchFilter()">
<input matInput [matDatepicker]="picker2" placeholder="End date" [(ngModel)]="this.endDate" (dateChange)="searchFilter()">

并在component.ts中声明变量并初始化它,并创建函数

startDate: any = '';
endDate: any = '';
searchFilter(): any {
 if(this.startDate != '' && this.endDate != '') do something
}
© www.soinside.com 2019 - 2024. All rights reserved.