角材料日期验证不正确

时间:2018-07-21 03:24:53

标签: angular angular-material

我正在使用Angular Material DatePicker,但是默认的日期验证不起作用。如果我输入“ 1”或“ 123”,它仍然可以通过验证。下面是编码细节。

<mat-form-field>
<input matInput [(ngModel)]="myDate" name="myDate" [matDatepicker]="Datepicker"
                        (click)="Datepicker.open()" >
<mat-datepicker-toggle matSuffix [for]="Datepicker"></mat-datepicker-toggle>
<mat-error>Invaild Date</mat-error>
</mat-form-field>
<mat-datepicker #Datepicker></mat-datepicker>

1 个答案:

答案 0 :(得分:1)

您需要拥有带有验证的formGroup,

this.form = this.fb.group({
      myDate: [this.helper.parseTime(this.data.endTime),
        [Validators.required, Validators.pattern(/^[0-9]{2}.[0-9]{2}$/), this.helper.validateTime]]
    });

然后

 <mat-error *ngIf="form.controls.myDate.hasError('required')">Invalid Date</mat-error>