解决Angular2动态表单丢失焦点问题
当数组是原始类型时,就会发生这种情况。这可以通过使用TrackBy来解决。因此,更改模板以匹配以下内容:
<div *ngFor="let value of field.values; let i=index; trackBy:trackByFn">
<input type="text" [(ngModel)]="field.values[i]" /><br/>
</div>
<div>
<button (click)="addValue(field)">Click</button>
</div>
并在ts文件中添加函数trackByFn,该函数返回值的(唯一)索引:
trackByFn(index: any, item: any) {
return index;
}