0

我尝试借助具有双向数据绑定的嵌套 ngFor 制作输入字段表。我几乎实现了这一点,但是双向数据绑定的东西是错误的,我找不到问题。

所以,这就是我想要的——我希望能够输入每个单词的字母。

我的带有输入字段的示例表

我有这张表,我可以输入,但是如果我输入第一个单元格,第二个单元格会出现相同的值,如果我输入第三个,值也会出现在第 4 和第 5 个......我无法理解为什么,我想问题出在这条线上

<input maxlength="1" size='5' name="{{i}}{{j}}" [(ngModel)]="helper[i][j]" [id]="j"/>

你能告诉我,我该如何解决这个问题?这是我的 plunker,它可以工作,但是我上面描述的这个错误...... 我的 plunker 在这里

4

1 回答 1

1

使用 时*ngFor,应尽量避免直接访问正在迭代的数组,例如使用[(ngModel)]="helper[i][j]".

通常,在使用数据绑定时,您应该尝试始终使用完整对象和点 (.) 表示法。

['','','','','']在您的情况下,只需用对象数组替换原始数组[value: '', value: '', value: '', value: '', value: '']并直接绑定它。

<td *ngFor="let item2 of helper[i]; let j = index;">
    <input maxlength="1" size='5' name="{{i}}{{j}}" [(ngModel)]="item2.value" [id]="j"/>
</td>

我已经更新了你的plunker

于 2017-06-26T21:20:53.940 回答