title: Controls of FormArray not displayed correctly after removing a control
body: <p>I have a component with a list of inputs in a FormArray. When I  try to remove one of the controls the last of the controls disappears instead of the one selected, but if I save the form the list of inputs are displayed correctly (the one I removed is not displayed and the last one is displayed).</p>
  
  <p>This is my code:</p>
  
  <p>component1.component.html</p>
  
  <pre><code>&lt;div [formGroup]="form"&gt;
      &lt;div [formArrayName]="name"&gt;
          &lt;div *ngFor="let row of formArr.controls; let i=index; trackBy: trackByIndex" [formGroupName]="i"&gt;
              &lt;input type="text" formControlName="text" /&gt;
              &lt;!-- Other inputs, selects... --&gt;
              &lt;i class="fa fa-times" aria-hidden="true" (click)="removeOcurrence(i)"&gt;&lt;/i&gt;
          &lt;/div&gt;
      &lt;/div&gt;
  &lt;/div&gt;
  </code></pre>
  
  <p>component1.component.ts</p>
  
  <pre><code>@Component({
      selector: 'component1',
      templateUrl: './component1.component.html',
      styleUrls: ['./component1.component.scss']
  })
  
  export class Component1 {
      ...
      private _form: FormGroup;
      private _formArr: FormArray;
      private _name: string;
  
      @Input() set form(form: FormGroup) {
          this._form = form;
      }
  
      get form(): FormGroup {
          return this._form;
      }
  
      @Input() set formArr(formArr: FormArray) {
          this._formArr = formArr;
      }
  
      get formArr(): FormArray {
          return this._formArr;
      }
  
      @Input() set name(name: string) {
          this._name = name;
      }
  
      get name(): string {
          return this._name;
      }
  
      removeOcurrence(index: number): void {
          this._formArr.removeAt(index);
      }
  
      trackByIndex(index: number): number {
          return index;
      }
  
      ...
  }
  </code></pre>
  
  <p>Example:</p>
  
  <p><a href="https://i.stack.imgur.com/CTlRu.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/CTlRu.png" alt="enter image description here"></a></p>
  
  <p>If for example I click on the second "X" to try to remove the second element, only the third element disappears (([first, second] is displayed), but if after it I save the form and refresh the page I get the correct list ([first, third]).</p>
  
  <p>So it seems like the ngFor is not refreshing after removing.</p>