【发布时间】:2019-11-08 11:51:04
【问题描述】:
我有一些表格是由FormGroup生成的。
class FormGroupCustom {
form: FormGroup;
}
let forms: FormGroupCustom[] = [];
for(let i = 0; i <= 10; i++) {
this.forms.push({"formName": i, "form": new FormGroup()});
}
如何从数组 this.forms 通知 formName: 1 任何字段已从 formName: 2 更改。
我尝试应用观察者模式,因为我不需要使用反应式嵌套表单。
我的解决方案是:
class Notify {
notifyChange(formName: string, valueField: any) {
// FIND form in array forms by formName
}
}
然后在特定元素上应用ng-change,如果形式如下:
<input type="text" (ngChange)="change('formName1', 'value')"
change(formName: string, value: any) {
let notify = new Notify();
notify.notifyChange(formName, value);
}
所以notifyChange 可以在数组表单中找到表单,而不是在此表单中的特定字段上执行操作
【问题讨论】:
-
您确定您提供的代码示例正常运行吗?我认为您不能将
"formName": i, "form": new FormGroup()推入数组中。您是否缺少对象文字{}? -
抱歉是对象,我编辑了