FormArray
AbstractControl
を拡張するので、chanesを発するvalueChanges
性質を有しています。テンプレートで
this.form = this.fb.group({
providers: this.fb.array([]),
});
(this.form.get('providers') as FormArray).push(new FormControl('', Validators.required));
(this.form.get('providers') as FormArray).push(new FormControl('', Validators.required));
(this.form.get('providers') as FormArray).valueChanges.subscribe(values => {
console.log(values);
});
:
<input *ngFor="let field of form.controls.providers.controls;" [formControl]="field">
各入力フィールドの値を持つ配列を返すであろう購読にvalues
ときに変更(文法またはUIから)のいずれか。
FormArray
にFormGroup
がある場合は何も変わりません。次のコンポーネントコードを使用してください。
(this.form.get('providers') as FormArray).push(this.fb.group({
'name': '',
'age': ''
}));
とテンプレートになります。
<div *ngFor="let field of form.controls.providers.controls;" [formGroup]="field">
<input formControlName="name" placeholder="name">
<input formControlName="age" placeholder="age">
</div>
ここにあなたがそれを検出するために、別のグループとしてのプロバイダの配列の内部の要素を登録する必要がありplunker
です。 –
あなたはそれを説明できますか? –
プロバイダの要素は何ですか? –