I have a simple list that binds two-way to a parameter hero in hero.component.ts.
Though when I start typing in the input field it loses focus and I have to click it again. What am I supposed to do in order to allow the user edit the input value without the input field loses target?
<li *ngFor="let power of hero.powers; let i = index">
<input [(ngModel)]="hero.powers[i]"/>
</li>
Did you try using
trackBy:trackByFn
in your ngFor, by using it prevent angular to recreate your DOM and it will keep track of changessee this tutorial here
Using trackBy function of angular fixes the issue.
live example showing it