我遇到了一个非常奇怪的问题。我需要为数组的每个元素生成一个带有一个 TR 的表,所以我使用 ngRepeat。每个 TR 还必须有自己的 ngController。
这可行,但是对数组进行排序会以某种方式为每个控制器分配错误的范围
<table ng-controller="ArrayController">
<tr ng-click="log()" ng-repeat="val in myArray | orderBy: 'value'" ng-controller="MyController">
<td>{{ val.value }}</td>
<td>{{ val.value2 }}</td>
</tr>
</table>
它一定会感到困惑,因为 ngRepeat 和控制器在同一个元素上。我想一种解决方案是在TR 中添加控制器,但它当然只能包含 TD,并且由于有两个,我需要将它们嵌套在一个元素中。
如何解决这个问题呢?我的问题是已知问题吗?
谢谢
编辑:
这是我的错。没有用的是删除项目。由于我尝试使用 splice 和 $index 从数组中删除一个元素(示例中为 myArray),因此我最终删除了错误的索引元素(因为排序)。