我有一些表格字段,有时不应该被要求。我想将ng-min
或ng-pattern
与ng-required
一起使用。
但是如果我在不需要字段时删除字段值本身(或以某种方式使它们无效)(ng-required
是假的),表单仍然是无效状态,因为错误的值不能满足{ {1}}或ng-min
。
我认为ng-pattern
和ng-pattern
在不需要时将{/ 1}}标记为无效(ng-min
是假的)
答案 0 :(得分:1)
这听起来像是自定义验证器的完美使用。有关自定义验证程序的角度小组的更多信息可以在here找到。我只想创建几个不同的自定义验证器,检查值是否为空并且或满足一些额外的模式或数字要求。
在npm上可能还有一个验证库,可以随时为您服务。
简单示例(未测试)
export const customMin(minimum: number): ValidatorFn {
return (control: AbstractControl): {[key: string]: any} => {
const val = control.value;
const valid = val && val >= minimum ? true
if (!val) {
return {"minValue": true};
} else {
return val >= minimum ? return {"minValue": true} : null
}
};
}