我正在Angular中进行表单验证,在阅读API时遇到了nullValidator。它说它是一个“验证程序,不执行任何操作。”在我看来,它是一个验证程序,实际上不执行任何操作。当我检查code on github时,这是正确的。它只是返回null。
所以我的问题是,为什么nullValidator存在?它有什么作用?
答案 0 :(得分:2)
想到一个用例。假设您有应该返回ValidatorFn
的函数。在某些情况下,您可能会返回不做任何事情的验证器是合理的。例如:
getValidator(): ValidatorFn {
if(someCondition) {
return realValidator;
}
return Validators.nullValidator;
}
它还表示null object pattern,可防止代码中出现空指针/空警卫,因为即使不执行任何操作,您也可以始终具有一些验证器。