如何使用formgroup获得自定义验证器?

时间:2018-02-05 22:26:10

标签: angular validation typescript angular2-formbuilder

我在使用自定义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 ... ;
  }
}

0 个答案:

没有答案