Tengo una matriz de formularios dentro de un generador de formularios y estoy cambiando dinámicamente los formularios, es decir, al hacer clic en cargar datos desde la aplicación 1, etc.
El problema que tengo es que todos los datos se cargan, pero los datos en el formarray se quedan y simplemente concatenan los elementos antiguos con los nuevos.
¿Cómo hago para que formarray solo tenga la nueva matriz y oculte la matriz anterior? Estoy creando un formulario de matriz usando angular2.
trabajando plnkr de mi proyecto
Lo siguiente hará lo que quieras, pero como se discutió en otra parte, aquí no hay posibilidad de volver a visitar los otros elementos del formulario, eso requiere un poco más de retoques :)
Simplemente establezca una condición que verifique si el objeto es el último elemento en formArray y, si lo es, muestra solo ese objeto.
Entonces, donde está iterando la matriz de objects , agregue la siguiente condición:
<div *ngFor="let object of myForm.controls.objects.controls; let i=index"> <div [formGroupName]="i" *ngIf="i === myForm.controls.objects.controls.length -1"> Agregue estas condiciones dentro de formArray s en la pestaña de la encuesta.
Ahorquillado