我想为我的表单组创建一个自定义验证函数,该函数验证国家/地区输入与我的国家/地区列表项的匹配。
这是我的国家/地区列表:
this.sharedService.getCountry().subscribe(res => {
res.map(item => {
this.countryList.push(item);
});
});
我的表格是:
this.form = fb.group({
country: new FormControl('', [Validators.required]),
});
答案 0 :(得分:1)
您需要编写一个自定义验证器服务,检查输入如下,
function check_if_valid(value,array){
if((alue){
const isInArray = array.includes(value);
return true;
} else {
return false;
}
}
@Injectable()
export class ValidatorsService {
public isInteger = (control:FormControl) => {
return check_if_valid(control.value,yourarray);
}
}
和组件
constructor(private _ValidatorsService: ValidatorsService){
}
country: new FormControl('', [Validators.required,this._ValidatorsService.isInteger ]),