插值错误在插值形式字段内无法正常工作

时间:2019-10-27 11:35:40

标签: angular-material customvalidator

我正在使用角度材料中的自定义验证来验证用户名 以下是我的代码

 <mat-form-field>
          <input id="Username" required name="Username" [(ngModel)]="employee.Username" type="text" matInput
            #Username="ngModel" (focusout)="ValidateUsername($event.target.value)" placeholder="Username">
            <mat-error *ngIf="isNotValidUsername">Username already exist</mat-error>
          <mat-error *ngIf="Username.errors?.required && Username.touched">Required</mat-error>
        </mat-form-field>

问题未显示“用户名已存在”错误。 如果我在mat-form-field之外编写此错误行代码,则它可以工作。而且,如果触发了“必需”错误,则它还会显示“用户名已存在”错误。但是它本身在mat-form-field标记内不起作用。我做错了什么?如何显示?

1 个答案:

答案 0 :(得分:0)

如果控件有效,

mat-error将不会显示错误。您可以使用错误状态匹配器为输入设置无效状态。以下文章介绍了如何在密码验证表单组中实现它。

https://stackblitz.com/angular/brleoyyorkap?file=app%2Finput-error-state-matcher-example.ts