Validators.nullValidator(control:AbstractControl)有什么意义?

时间:2018-10-25 07:03:48

标签: angular validation

我正在Angular中进行表单验证,在阅读API时遇到了nullValidator。它说它是一个“验证程序,不执行任何操作。”在我看来,它是一个验证程序,实际上不执行任何操作。当我检查code on github时,这是正确的。它只是返回null。

所以我的问题是,为什么nullValidator存在?它有什么作用?

1 个答案:

答案 0 :(得分:2)

想到一个用例。假设您有应该返回ValidatorFn的函数。在某些情况下,您可能会返回不做任何事情的验证器是合理的。例如:

getValidator(): ValidatorFn {
    if(someCondition) {
        return realValidator;
    }
    return Validators.nullValidator;
}

它还表示null object pattern,可防止代码中出现空指针/空警卫,因为即使不执行任何操作,您也可以始终具有一些验证器。