Angular2:找出FormControl是否需要验证器? [英] Angular2: Find out if FormControl has required validator?
问题描述
这个是否有人知道如何找出Angular2 FormControl的方法.form = builder.group({name:['',Validators.required]};
Can然后我查询 this.form.controls ['name']
控件是否为必填字段?我知道我可以检查它是否有效,但这不是我希望。
亲切的问候,
Marc
这个函数应该适用于FormGroups和FormControls。
$ b $ pre $ export const hasRequiredField =(abstractControl:AbstractControl):boolean => {$ b $如果(abstractControl.validator){
const validator = abstractControl.validator({} as AbstractControl);
if(validator&& validator.required){
return true;
if(abstract control ['controls']){
for(const controlName (abstractControl ['controls']){
if(abstractControl ['controls'] [controlName]){
if(hasRequiredField(abstractControl ['controls'] [controlName])){
返回true;
}
}
}
}
return false;
};
does someone know a way to find out for an Angular2 FormControl if the required validor is registered for the control.
this.form = builder.group({name: ['', Validators.required]};
Can I then query the this.form.controls['name']
control if it is a required field? I know I can check if it is valid, but that's not what I want.
Kind regards, Marc
This function should work for FormGroups and FormControls
export const hasRequiredField = (abstractControl: AbstractControl): boolean => {
if (abstractControl.validator) {
const validator = abstractControl.validator({}as AbstractControl);
if (validator && validator.required) {
return true;
}
}
if (abstractControl['controls']) {
for (const controlName in abstractControl['controls']) {
if (abstractControl['controls'][controlName]) {
if (hasRequiredField(abstractControl['controls'][controlName])) {
return true;
}
}
}
}
return false;
};
这篇关于Angular2:找出FormControl是否需要验证器?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!