FormArrayコントロールに初期値を追加しようとしています。私はこのコードを使用しています:Ionic 2のFormArrayコントロールに初期値を設定する方法は?
if(this.navParams.get('kids').length > 1) {
for(let i=0; i<this.navParams.get('kids').length - 1; i++) {
this.addChild();
}
for(let i=0; i<this.navParams.get('kids').length; i++) {
this.registrationForm.controls['child'][i]['child_first_name'].setValue("asdasdasd");
}
}
しかし、私は間違った方法でsetValueメソッドを使用していると思います。 は、私はこのエラーが生じています:ここで
はにaddChildためのコードである:ここで
addChild() {
// add child to the list
const control = <FormArray>this.registrationForm.controls['child'];
control.push(this.initChild());
// console.log(this.registrationForm.value);
}
はinitChild方法です:
initChild() {
// initialize child form
return this.formBuilder.group({
child_first_name: ['', Validators.compose([Validators.maxLength(255), Validators.required])],
child_last_name: ['', Validators.compose([Validators.maxLength(255), Validators.required])],
child_gender: ['', Validators.compose([Validators.required])],
child_bdate: ['', Validators.compose([Validators.required])]
});
}
私は等のための解決策を見つけるしていますほぼ2日間。これは初めてのIonicの使用です。どんな助けもありがとう。ありがとう、SOコミュニティ!
addChildメソッドのコードを追加できますか? – yurzui
質問を編集し、addChildメソッドとinitChildメソッドを追加しました。ありがとう! –