我是 Angular.js 的新手,在排序数组和处理排序数据时遇到了一些问题。
我有一个包含项目的列表,并希望按“Store.storeName”对它进行排序,到目前为止它正在工作。但是在对数据进行排序后,我的删除功能不再起作用。我认为那是因为 $index 在排序后是错误的,所以错误的数据被删除了。
我该如何解决?在范围内而不是在视图中排序数据?怎么做?
以下是一些相关代码:
在视图中:
<tr ng-repeat="item in items | orderBy:'Store.storeName'">
<td><input class="toggle" type="checkbox" ng-model="item.Completed"></td>
<td>{{item.Name}}</td>
<td>{{item.Quantity}} Stk.</td>
<td>{{item.Price || 0 | number:2}} €</td>
<td>{{item.Quantity*item.Price|| 0 | number:2}} €</td>
<td>{{item.Store.storeName}}</td>
<td><a><img src="img/delete.png" ng-click="removeItem($index)">{{$index}}</a></td>
</tr>
在我的控制器中,我有这个删除功能,它应该删除特定的数据:
$scope.removeItem = function(index){
$scope.items.splice(index,1);
}
这在视图中订购之前效果很好。如果缺少重要的东西,请让我现在。
谢谢!