我在使用自定义Angular 5 formbuilder验证器时遇到了很多麻烦。
我想使用http.get
来获取接口Record[]
的数组,我将用它来验证表单输入中的ID。
我的get
调用在服务器端工作(它只返回id为与输入匹配的Record[]
个对象。因此,如果数组为空,则ID是唯一的,输入是有效的。
任何帮助(尤其是代码片段!)都会非常感激。
这是一种基本的脚手架:
this.editContractorForm = this.formBuilder.group({
id: ['', [Validators.required], this.checkId],
configuration: this.formBuilder.array([])
});
checkId(): ValidatorFn {
return (control: AbstractControl) => {
this.http.get<Record[]>(url)...
...
return ... ;
}
}