【发布时间】:2021-12-13 09:39:48
【问题描述】:
我实现了一个日期选择器,只要日期无效,它就会显示一个垫子错误。问题是,除非用户单击日历然后选择正确的日期,否则在更正日期后错误不会消失。
HTML:
<mat-form-field [appearance]="appearance">
<input
matInput
class="om-text-input"
type="text"
placeholder="DD.MM.YYYY"
[required]="isRequired"
[min]="minDate"
[max]="maxDate"
(focus)="Datepicker.open()"
[matDatepicker]="Datepicker"
#input="ngModel"
[(ngModel)]="date"
/>
<mat-datepicker-toggle matSuffix [for]="Datepicker">
<mat-icon matDatepickerToggleIcon>calendar_today</mat-icon>
</mat-datepicker-toggle>
<mat-datepicker #Datepicker>
<mat-datepicker-actions>
<button mat-button matDatepickerCancel>Cancel</button>
<button mat-raised-button color="primary" matDatepickerApply>Apply</button>
</mat-datepicker-actions>
</mat-datepicker>
<mat-error class="om-error" *ngIf="input.hasError">Invalid date</mat-error>
</mat-form-field>
组件:
export class DatePickerComponent {
date: Date = new Date();
minDate = DateTime.now().minus({ days: 365 }).toISODate();
maxDate = DateTime.now().plus({ days: 365 }).toISODate();
@Input()
isRequired = false;
@Input()
appearance: Appearance = Appearance.outline;
}
模块:
providers: [{ provide: MAT_DATE_LOCALE, useValue: 'DE-EU' }],
【问题讨论】:
-
从日期选择器中选择时,日期值格式是什么?和'28.10.2021'一样吗?
标签: angular typescript validation angular-material datepicker