我已经成功地将“ quantityControl” formControlName中输入字段中的值实现为不小于1。但是我的问题是在formArray上的时候。如何将其设置为不小于0或不为负数?
这是下面的代码以及指向我的stackblitz的链接 CODE LINK
this.inquiryForm.get('quantityControl').valueChanges.pipe(
filter(quantity => quantity < 1)
).subscribe(value => {
console.log(value);
this.inquiryForm.get('quantityControl').setValue(1);
});
答案 0 :(得分:0)
为了更好地理解onPerformSync()
表格。
使用compose()使用多个自定义验证来配置输入字段。
this.form = formBuilder.group({
formControlNameValue:['', Validators.compose([Validators.required, positiveVal ])
]});
并实现positiveVal
static positiveVal(control:Control):{ [key: string]: any; } {
if (Number(control.value) < 0) {
return {nonZero: true};
} else {
return null;
}
}