小编Sim*_*mon的帖子

Angular2验证器,它依赖于多个表单字段

是否可以创建一个可以使用多个值来确定我的字段是否有效的验证器?

例如,如果客户的首选联系方式是通过电子邮件,则应该要求电子邮件字段.

谢谢.


更新了示例代码...


    import {Component, View} from 'angular2/angular2';
    import {FormBuilder, Validators, formDirectives, ControlGroup} from 'angular2/forms';

    @Component({
        selector: 'customer-basic',
        viewInjector: [FormBuilder]
    })
    @View({
        templateUrl: 'app/components/customerBasic/customerBasic.html',
        directives: [formDirectives]
    })
    export class CustomerBasic {
        customerForm: ControlGroup;

        constructor(builder: FormBuilder) {
            this.customerForm = builder.group({
                firstname: [''],
                lastname: [''],
                validateZip: ['yes'],
                zipcode: ['', this.zipCodeValidator] 
                // I only want to validate using the function below if the validateZip control is set to 'yes'
            });
        }

        zipCodeValidator(control) {
            if (!control.value.match(/\d\d\d\d\d(-\d\d\d\d)?/)) {
                return { invalidZipCode: true };
            } …
Run Code Online (Sandbox Code Playgroud)

angular

106
推荐指数
7
解决办法
8万
查看次数

标签 统计

angular ×1