【发布时间】:2018-03-20 06:19:40
【问题描述】:
我正在创建一个基于切换值的 formGroup 验证
public toggle:boolean=false;
ngOnInit(): void {
this.formGroup = this.formBuilder.group({
formArray: this.formBuilder.array([
this.formBuilder.group({
toggleFormCtrl: [this.toggle, null],
fnameFormCtrl: ['', this.checkInputs.bind(this)],
lnameFormCtrl: ['', this.checkInputs.bind(this)],
addressFormCtrl: ['', this.checkMiInput.bind(this)]
}),
])
});
}
checkInputs(c: FormControl) {
if (this.toggle) {
return c.value === '' ? null : {
checkinputs: {
valid: false
}
};
} else {
return c.value ? null : {
checkinputs: {
valid: false
}
};
}
}
checkMiInput(c: FormControl) {
if (this.toggle) {
return c.value ? null : {
checkMiInput: {
valid: false
}
};
} else {
return c.value === '' ? null : {
checkMiInput: {
valid: false
}
};
}
}
根据我要验证表单的切换值。当toggle值为true时,表单应该验证formControl addressFormCtrl,当toggle为false时,它应该验证fnameFormCtrl和lnameFormCtrl
我的代码运行不正常。我错过了什么?
【问题讨论】:
标签: javascript angular typescript angular4-forms form-control