【发布时间】:2019-06-23 05:42:39
【问题描述】:
我使用的是 Angular 6,我有一个表单,里面有两个字段名称和显示名称。我在必填、模式、最小长度、最大长度等两个字段上都进行了 3-4 次验证。我想一次只显示一条错误消息。如何实现?
这里是示例代码。
<mat-form-field required>
<label for="attribute_name">Name</label>
<input type="text"
required
matInput
[(ngModel)]="attribute.name"
name="name"
id="attribute_name"
#nameInput="ngModel"
[ngClass]="{'form-validation--error-border' : (nameInput?.errors && (nameInput?.dirty || nameInput?.touched)) || false}"
[minlength]="3"
[maxlength]="63"
[pattern]="[some pattern]" />
<ul *ngIf="nameInput.errors && (nameInput.dirty || nameInput.touched)" class="form-validation form-validation--error">
<li *ngIf="nameInput.errors.required">Name is required</li>
<li *ngIf="nameInput.errors.minlength">Minimum length should be 3.</li>
<li *ngIf="nameInput.errors.pattern">It should start with letter.</li>
</ul>
</mat-form-field>
【问题讨论】:
-
我会使用 ngx-valdemort:ngx-valdemort.ninja-squad.com。免责声明:我是作者。
标签: angular validation angular-forms