繁体   English   中英

Angular 2表单验证错误

[英]Angular 2 form validation errors

在角度2中,我只想在用户离开字段区域之后进行客户端验证。 这是因为,当用户输入电子邮件或电话之类的字段时,他们总是会抛出错误,直到他们完成完整的电子邮件键入为止,这并不是最佳的用户体验。

目前我已经使用

address1: ['', Validators.compose([Validators.required, 
              Validators.maxLength(128), Validators.minLength(5)])],

模板:

<div class="addres">
    <label class="form_label asterisk">Address Line 1</label>
    <textarea class="form_input " formControlName="address1"></textarea>
    <div class="error" *ngIf="addDealerForm.controls['address1'].errors && (addDealerForm.controls['address1'].touched)">
        <div *ngIf="addDealerForm.controls['address1'].hasError('required')">
            Address1 is required.
        </div>
        <div *ngIf="addDealerForm.controls['address1'].hasError('maxlength')">
            Exceeded maximum character length.
        </div>
        <div *ngIf="addDealerForm.controls['address1'].hasError('minlength')">
            Enter minimum character length.
        </div>
    </div>
</div>

帮助我解决该问题。

我认为您需要对(blur)方法进行验证。 对于前

// 零件

 onBlur() {
        this.formControl.get(name).setValidators('', [Validators.minLength(3));
    }

//表格

<textarea class="form_input " formControlName="address1" (blur)="onBlur()"></textarea>

这有帮助吗

也看到此讨论可能会有所帮助

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM