Атрибут MatDatepicker max не работает при динамическом задании значения - PullRequest
0 голосов
/ 08 января 2019

Я работаю над Ionic-Angular проектом с Ionic v4. Я попробовал максимальное значение attr во входном теге matdatepicker. Работает, когда значение пустое. Но когда я устанавливаю значение для ввода программно, максимальная проверка не работает. Я связал установку значения, используя ngModel, formcontrol и formcontrolname. Но каждый раз max attr не работал.

<mat-form-field class="full-width">
            <input matInput [matDatepicker]="picker" readonly placeholder="Date Performed" [max]="todayDate" (click)="picker.open()"
            [formControl]="serializedDate" formControlName="selecteddate">
            <mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
            <mat-datepicker #picker></mat-datepicker>
          </mat-form-field>
let convetedDate = moment('1544466600000', "x").format("DD-MMM-YYYY");
    this.myDate = new Date(Date.parse(convetedDate));
    this.serializedDate = new FormControl(this.myDate);

1 Ответ

0 голосов
/ 08 января 2019

Поскольку вы связываете todayDate как [max] для выбора даты, ваша переменная todayDate должна содержать максимальную дату. Его нельзя установить с помощью ngModel или formControl. Я создал стек, используя ваш пример, в котором я установил переменную todayDate в логике, и она работает, как и ожидалось. Здесь Надеюсь, это поможет

Редактировать: [max] все еще работает после установки значения serializedDate с использованием ngModel или [formControl]. Смотрите обновленный стек здесь

Я думаю, почему вы не можете увидеть максимальное действие в средстве выбора даты, потому что дата, которую вы устанавливаете для элемента управления датой, - 12/10/2018, а max - это сегодняшняя дата. Поэтому попробуйте перейти к текущему месяцу, и вы увидите даты отключения после сегодняшней даты, как в stackblizt.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...