检查是否将带有参数的验证器应用于表单控件

时间:2018-08-14 02:21:36

标签: angular validation

在Angular应用程序中,我正在使用反应式表单来构建表单并传递一些验证器。 我正在使用Field类。

我想在类构造函数中检查特定的验证器是否在验证器列表中。当验证器不接受任何参数时,我可以执行此操作,但是我不知道如何检查它们何时执行。

//来自组件的Initialize Field类

this.field = new Field({
    validators: [
        Validators.required,
        Validators.maxLength(20)
    ]
});

//字段类的构造方法

export class Field {
    constructor(data) {
        hasRequired = false;
        hasMax = false;
        for (let i = 0; i < data.validators.length; i++) {
            // This works
            if (data.validators[i] === Validators.required) {
                hasRequired = true;
            }
            // This doesn't, as Validators.maxLength takes in an argument
            if (data.validators[i] === Validators.maxLength) {
                hasMax = true;
            }
        }
    }
}

0 个答案:

没有答案