Невозможно отключить даты datepicker с помощью Angular8 - PullRequest
0 голосов
/ 29 мая 2020

У меня есть два поля выбора даты, например from date and to date в ANgular8, и мне нужно отключить даты до в соответствии со значением даты от. Сначала я объясняю свой код.

<div class="col-sm-2">
   <mat-form-field appearance="outline">
      <mat-label>From Date</mat-label>
      <input matInput [matDatepicker]="picker1" [value]="date.value || ''" (dateChange)="onDateSelectionChanged($event)">
      <mat-datepicker-toggle matSuffix [for]="picker1"></mat-datepicker-toggle>
      <mat-datepicker #picker1></mat-datepicker>
   </mat-form-field>
</div>
<div class="col-sm-2">
   <mat-form-field appearance="outline">
      <mat-label>To Date</mat-label>
      <input matInput [matDatepicker]="picker2" [min]="minDate" [max]="maxDate" [value]="date.value || ''" (dateChange)="onDateSelectionChanged1($event)">
      <mat-datepicker-toggle matSuffix [for]="picker2"></mat-datepicker-toggle>
      <mat-datepicker #picker2></mat-datepicker>
   </mat-form-field>
</div>

мой машинописный код приведен ниже.

onDateSelectionChanged(event:any) {
    const futureMonth = moment(event.target.value).add(1, 'M');
    console.log('future', futureMonth);
    this.minDate =event.target.value;
    this.maxDate =futureMonth;
    const startDate = moment(event.target.value).format('YYYY-M-DD');
    if(startDate === 'Invalid date') {
      this.fromDate = '';
      this.toDate = '';
    } else {
      this.fromDate = startDate;
    }
    this.fromDate = startDate;

    if(!isEmpty(this.toDate) && !isEmpty(this.fromDate)) {
      this.formFilter.controls['order_dates'].setValue({from: this.fromDate, to: this.toDate});
    } else {
      this.formFilter.controls['order_dates'].setValue({});
    }
  }

Здесь мне нужно исправить максимальную дату поля to date, которая будет через 1 месяц из from date из средства выбора даты, но в моем случае дата min работает нормально, но максимальная дата не работает.

...