关键代码
var formGroup = this.validateForm.controls; //control :FormControl var controlName = Object.keys(formGroup).find(name => control === formGroup[name]) || null;
示例
validateForm: FormGroup; constructor(private fb: FormBuilder){ } init(){ config = { id: [null], name: [null, Validators.compose([Validators.required, Validators.maxLength(50)])], amount: [null] } this.validateForm = this.fb.group(config)
} checkDataValidator = (control: FormControl): { [s: string]: boolean } => { if (!control.value) { if (this.validateForm) { var formGroup = this.validateForm.controls; var controlName = Object.keys(formGroup).find(name => control === formGroup[name]) || null; var amount = this.validateForm.controls['amount'].value; if (controlName === 'name' && !control.value && amount) { return { repeat: true, error: true }; } } } }