Ich bin neu in Angular.js und habe einige Probleme beim Sortieren meines Arrays und beim Bearbeiten dieser sortierten Daten.
Ich habe eine Liste mit Elementen und möchte sie nach "Store.storeName" sortieren, was bisher funktioniert. Aber nach dem Sortieren der Daten funktioniert meine Löschfunktion nicht mehr. Ich denke, das liegt daran, dass der $ -Index nach dem Sortieren falsch ist und daher die falschen Daten gelöscht werden.
Wie kann ich das lösen? Bestellen Sie die Daten im Bereich und nicht in der Ansicht? Wie geht das?
Hier ist ein relevanter Code:
In der Ansicht:
<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>
Und in meinem Controller habe ich diese Löschfunktion, die die spezifischen Daten löschen soll:
$scope.removeItem = function(index){
$scope.items.splice(index,1);
}
Dies funktioniert gut, bevor Sie in der Ansicht bestellen. Wenn etwas Wichtiges fehlt, lassen Sie es mich jetzt.
Vielen Dank!