Tôi mới sử dụng Angular.js và gặp một số vấn đề khi sắp xếp mảng của mình và làm việc trên dữ liệu được sắp xếp đó.
Tôi có một danh sách với các mục và muốn sắp xếp nó theo "Store.storeName", danh sách này đang hoạt động cho đến nay. Nhưng sau khi sắp xếp dữ liệu, chức năng xóa của tôi không hoạt động nữa. Tôi nghĩ rằng đó là do $ index bị sai sau khi sắp xếp và vì vậy dữ liệu sai sẽ bị xóa.
Làm thế nào tôi có thể giải quyết điều đó? Sắp xếp thứ tự dữ liệu trong phạm vi và không trong chế độ xem? Làm thế nào để làm điều đó?
Đây là một số mã có liên quan:
Theo quan điểm:
<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>
Và trong bộ điều khiển của tôi, tôi có chức năng xóa này, chức năng này sẽ xóa dữ liệu cụ thể:
$scope.removeItem = function(index){
$scope.items.splice(index,1);
}
Điều này hoạt động tốt trước khi đặt hàng trong Chế độ xem. Nếu có điều gì quan trọng bị thiếu, xin vui lòng cho tôi bây giờ.
Cảm ơn!