在Angular中,可以通过以下步骤动态添加不同的FormGroup到FormArray:
import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup, FormArray } from '@angular/forms';
@Component({
selector: 'app-my-component',
templateUrl: './my-component.component.html',
styleUrls: ['./my-component.component.css']
})
export class MyComponent implements OnInit {
myForm: FormGroup;
formArray: FormArray;
constructor(private fb: FormBuilder) { }
ngOnInit() {
this.myForm = this.fb.group({
myArray: this.fb.array([])
});
this.formArray = this.myForm.get('myArray') as FormArray;
}
}
<form [formGroup]="myForm">
<div formArrayName="myArray">
<div *ngFor="let control of formArray.controls; let i = index">
<div [formGroupName]="i">
<input formControlName="name" placeholder="Name">
<input formControlName="age" placeholder="Age">
<!-- 其他表单控件 -->
</div>
</div>
</div>
</form>
addFormGroup() {
const group = this.fb.group({
name: '',
age: ''
// 其他表单控件的初始化
});
this.formArray.push(group);
}
<button (click)="addFormGroup()">添加</button>
通过以上步骤,就可以在Angular中动态添加不同的FormGroup到FormArray了。
在这个例子中,我们创建了一个表单,其中包含了一个FormArray,可以根据需要动态添加FormGroup。每个FormGroup包含了一些表单控件,比如输入框等。通过点击添加按钮,就可以添加一个新的FormGroup,并在模板中显示出来。
腾讯云相关产品和产品介绍链接地址:
以上仅为部分腾讯云相关产品,更多产品信息请访问腾讯云官网。
领取专属 10元无门槛券
手把手带您无忧上云