Wiederholungsanweisung, die Weinrekorde von einer API ausgibt. Ich habe eine Fabrik-Funktion den Wein API zu dienen, die dann in meinem Controller zugegriffen wirdFehler: [ngRepeat: Dupes] Was bedeutet das?
app.factory("Wine", function ($http){
var factory = {};
//getWines
factory.getWines = function(){
return $http.get("http://www.greatwines.9000.com")
}
}
Controller:
app.controller("winesCtrl", function($scope, $http, Wine){
Wine.getWines()
.success(function(wines){
$scope.wines = wines;
})
.error(function(){
alert("Error!");
});
});
VIEW:
<h2>Wine list</h2>
<div class="row margin-top-20 wine-container" ng-repeat="wine in wines">
<div class="col-sm-3">
<img src="{{wine.picture}}" class="img-responsive" />
</div>
<div class="col-sm-9">
<div class="margin-top-20">
<span class="bold">Name: </span><span>{{wine.name}}</span>
</div>
<div>
<span class="bold">Year: </span><span>{{wine.year}}</span>
</div>
<div>
<span class="bold">Grapes: </span><span>{{wine.grapes}}</span>
</div>
<div>
<span class="bold">Country: </span><span>{{wine.country}}</span>
</div>
<div>
<span class="bold">Region: </span><span>{{wine.region}}</span>
</div>
<div>
<span class="bold">Price: </span><span>{{wine.price}}</span>
</div>
<div>
<span class="bold">{{wine.description}}</span>
</div>
<div class="margin-top-20">
<a href="#/wines/{{wine.id}}" class="btn btn-default">Edit Wine</a>
</div>
</div>
</div>
ich auf diesem Fehler geklickt und im typischen „vage“ AngularJS Art und Weise ich diese bekommen :
Duplicates in a repeater are not allowed. Use 'track by' expression to specify unique keys. Repeater: wine in wines, Duplicate key: string:e, Duplicate value: e
Was bedeutet das? Wein ist nicht dasselbe wie "Wein", also warum denkt er, dass es ein Duplikat ist?
Dank es gibt aber noch keinen Sinn für mich machen. Außerdem habe ich http://www.greatwines.9000.com/wines am Ende der HTTP-Anfrage hinzugefügt und aus irgendeinem Grund funktioniert es jetzt. Ich stolpere immer wieder über diese mysteriösen Bugs und behebe mich mit angularjs. Es ist nicht sehr konsistent. – HGB