12
votes
addStop() {
    const control = <FormArray>this.editForm.controls['stops'];
    control.push(this.initStop());
}

I have this code to add a "stop" at the bottom of the form array. But I want to add the new "stop" not to the last position, but one position before the last stop.

This doesn't work for example (not at all, I know that the numbers are wrong. Splice function doesn't exist at )

control.splice(2, 0, this.initStop());
1

1 Answers

28
votes

Use FormArray#insert:

control.insert(<position>, this.initStop());