Сообщения о проверке даты и времени для угловых материалов
Как отобразить сообщения проверки для ошибок проверки минимальной и максимальной дат в Angular Material Datepicker
<input [min]="minDate" [max]="maxDate" matInput [matDatepicker]="picker" [formControlName]="date">
<mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
<mat-datepicker #picker></mat-datepicker>
<mat-error class="error-message" *ngIf="formgroup.get('date').hasError('required') && (formgroup.get('date').dirty || formgroup.get('date').touched)">Date is Required</mat-error>
Здесь Обязательная проверка была установлена.
Как и я хочу показать, Дата должна быть выше, чем 01.01.2009, если пользователь набрал дату, которая меньше minDate.
Я знал, что все предыдущие даты будут отключены, если мы установим minDate. Но в этом приложении мы также разрешаем пользователю вводить дату! Поэтому, когда пользователь вводит дату, которая предшествует определенному minDate, я хочу показать сообщение об ошибке!
Есть ли способ добиться этого?
1 ответ
Вы можете использовать ссылку на ngModel, чтобы узнать, если дата ошибочна.
В этом стеке я сделал так, чтобы вы могли видеть ошибки, примененные к входу (чтобы вы могли знать ошибку), а также отображать ошибку, когда вход содержит ошибку.
<mat-form-field class="example-full-width">
<input matInput #input="ngModel" [(ngModel)]="date" [min]="minDate" [max]="maxDate" [matDatepicker]="picker" placeholder="Choose a date">
<mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
<mat-datepicker #picker></mat-datepicker>
<mat-error *ngIf="input.hasError('matDatepickerMax')">Date should be inferior</mat-error>
</mat-form-field>
<br><br><br>
{{ input.errors | json }}