是否可以使用相同的键但作为不同的实例来复制Angular 2 Form?

时间:2019-03-05 12:57:55

标签: angular angular-reactive-forms angular-forms

在我们的项目中,我们具有具有特定字段ID(例如日期,宽度,高度)的表格。单击按钮即可看到此表格。我想要的是每次我单击此按钮时都有新的表单。因此,在最终视图中,我将有5种形式(单击5次按钮),但是具有相同的键(日期,witdh,高度),其中每个键的每种形式应具有不同的值。

之后,我是否可以在输入每个表单时提交表单,并将每个表单验证为独立实例,并且仅具有专用于特定表单实例的键值?

感谢您的想法和答复。

2 个答案:

答案 0 :(得分:1)

好的。您只需要一个FormArray,内部便会有相同的FormGroup的倍数。

https://angular.io/api/forms/FormArray

this.arr = new FormArray([
   new FormGroup(this.makeFormGroup()),
]);

并在按钮按下时添加新的formGroup

this.arr.push(this.makeFormGroup());

使用https://angular.io/api/forms/FormBuilder可能会更容易;

答案 1 :(得分:0)

您可能只想声明每个具有默认formGroup名称和ngSubmit的表单

<form [formGroup]="complexForm" (ngSubmit)="example()">

                        <button type="submit" class="btn" [disabled]="!complexForm.valid">Save</button>
</form>
  

您可以返回表格的数量