ฉันเพิ่งเริ่มใช้ Angular.js และมีปัญหาในการจัดเรียงอาร์เรย์ของฉันและทำงานกับข้อมูลที่เรียงลำดับนั้น
ฉันมีรายการที่มีรายการและต้องการให้จัดเรียงตาม "Store.storeName" ซึ่งใช้งานได้แล้ว แต่หลังจากจัดเรียงข้อมูลฟังก์ชันลบของฉันไม่ทำงานอีกต่อไป ฉันคิดว่าเป็นเพราะดัชนี $ ผิดหลังจากการเรียงลำดับข้อมูลที่ไม่ถูกต้องจึงถูกลบ
ฉันจะแก้ปัญหานั้นได้อย่างไร? จัดลำดับข้อมูลในขอบเขตและไม่อยู่ในมุมมอง? ต้องทำอย่างไร?
นี่คือรหัสที่เกี่ยวข้อง:
ในมุมมอง:
<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);
}
ใช้งานได้ดีก่อนสั่งซื้อใน View หากสิ่งสำคัญขาดหายไปโปรดแจ้งให้เราทราบทันที
ขอบคุณ!