(Angular2)FormArray 在添加新表单时隐藏以前的表单

(Angular2) FormArray hide previous form as new form added

我在 formbuilder 中有一个表单数组,我正在动态更改表单,即单击从应用程序 1 等加载数据。

我遇到的问题是所有数据都加载了,但 formarray 中的数据保留下来,只是将旧项目与新项目连接起来。

如何使 formarray 仅包含新数组并隐藏以前的数组。我正在使用 angular2 创建数组形式。

working plnkr 我的项目

下面会做你想做的,但正如其他地方所讨论的,这里不可能重新访问其他表单元素,这需要更多的修改:)

只需设置一个条件,检查对象是否是 formArray 中的最后一项,如果是,则只显示该对象。

因此,在迭代 objects 数组的位置添加以下条件:

<div *ngFor="let object of myForm.controls.objects.controls; let i=index">
 <div [formGroupName]="i" *ngIf="i === myForm.controls.objects.controls.length -1">

在调查选项卡的 formArray 中添加这些条件。

分叉

Plunker