You can do something like this:
this.contact = this.fb.group({
'Festnetz': [],
'Mobil': [],
'Email': [],
},{validator:(formGroup:FormGroup)=>{
return this.validatePhone(formgroup);
});
validatePhone(formgroup:FormGroup){
if(formgroup.controls["Festnetz"].value || formgroup.controls["phone"].value){
return {validatePhone:true};
}
else{
return null;
}
}
OR you can create a separate group for your phone numbers:
this.contact = this.fb.group({
'phoneGroup':this.fb.group({
'Festnetz': [],
'Mobil': []
},{validator:(formgroup:FormGroup)=>{
return this.validatePhone(formGroup);
}),
'Email': [],
});
validatePhone(formgroup:FormGroup){
if(formgroup.controls["Festnetz"].value || formgroup.controls["phone"].value){
return {validatePhone:true};
}
else{
return null;
}
}
. , "Festnetz"