Как добавить маску для выбора диапазона дат углового материала?
Здравствуйте, я использую средство выбора диапазона дат углового материала. (угловой материал 14).
<mat-form-field appearance="fill">
<mat-date-range-input [rangePicker]="picker" [max]="today">
<input matStartDate [(ngModel)]="item.startValue" [placeholder]="'Of' | translate " #dateRangeStart
(keypress)="validation($event, index)">
<input matEndDate [(ngModel)]="item.endValue" [placeholder]="'Till' | translate" #dateRangeEnd
(dateChange)="dateRangeChange(index)" (keypress)="validation($event, index)">
</mat-date-range-input>
<mat-datepicker-toggle matSuffix [for]="picker"></mat-datepicker-toggle>
<mat-date-range-picker #picker (closed)="afterClose(item, index)"></mat-date-range-picker>
</mat-form-field>
ts-файл
validation(event: { which: number; keyCode: number; key: string }, index: number) {
if (this.filterList[index].validation) {
const charCode = (event.which) ? event.which : event.keyCode;
if (this.filterList[index].type == 'date') {
const dateRegEx = new RegExp(/^\d{1,2}\.\d{1,2}\.\d{4}$/);
return dateRegEx.test(this.filterList[index].startValue) ? null : { date: true }
}
if (eval(this.filterList[index].validation)) {
return true;
}
return false;
}
}
Я хочу писать только числа, а формат должен быть дд/мм/ГГГГ. Если я выбираю дату из формата, это правильно, но когда я пишу ключевое слово и записываю номер, он не показывает мне автоматически символ «/». У меня проблема, когда я пишу на клавиатуре, дата не разбивается на / Если я не сфокусировал ввод. Поэтому я могу написать 1111111111111