我有一个电子邮件字段,该字段是可选的,但如果其值应与
电子邮件模式?

如果表单中有很多可选字段,如网站,电话等,该怎么办?

顺便说一句是使用FormBuilder,FormGroup,Validators form @ angular/forms

最佳答案

通过创建optionalValidator来解决此问题:

import { ValidatorFn, AbstractControl, Validators } from '@angular/forms';

export function optionalValidator(validators?: (ValidatorFn | null | undefined)[]): ValidatorFn {
    return (control: AbstractControl): { [key: string]: any } => {

        return control.value ? Validators.compose(validators)(control) : null;
    };
}

以我的 react 形式:
this.form = this._fb.group({
      email: [this.contact.email, [optionalValidator([Validators.maxLength(255), Validators.email])]]
    });

关于angular - 如何验证 Angular 2中的可选字段?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/45260643/

10-09 04:24