Angularjs falscher $ Index nach orderBy

Ich bin neu bei Angular.js und habe einige Probleme beim Sortieren meines Arrays und beim Bearbeiten dieser sortierten Daten.

Ich habe eine Liste mit Artikeln 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 Umfang 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 wissen.

Vielen Dank!

Antworten auf die Frage(6)

Ihre Antwort auf die Frage