487 Stimmen

Angular ng-Wiederholung Fehler "Wiederholungen in einem Repeater sind nicht erlaubt."

Ich definiere einen benutzerdefinierten Filter folgendermaßen:

        ....

Wie Sie sehen können, ist das ng-repeat, in dem der Filter verwendet wird, in ein anderes ng-repeat verschachtelt.

Der Filter ist wie folgt definiert:

myapp.filter('range', function() {
    return function(input, min, max) {
        min = parseInt(min); //Mach den String-Eingang int
        max = parseInt(max);
        for (var i=min; i

`

Ich bekomme:

Fehler: Duplikate in einem Repeater sind nicht erlaubt. Repeater: comment in item.comments | range:1:2 ngRepeatAction@https://ajax.googleapis.com/ajax/libs/angularjs/1.1.4/an

`

0voto

Yogesh Sharma Punkte 177

Duplikate in einem Wiederholungselement sind nicht erlaubt. Verwenden Sie den Ausdruck 'track by', um eindeutige Schlüssel anzugeben.

Wiederholungselement: {0}, Duplikatschlüssel: {1}, Duplikatwert: {2}

Beispiel

             Vorname Nachname 

                {{person.firstName}}
                {{person.lastName}}

                {{person1.firstName}}
                {{person1.lastName}}

           {{sayHello()}}

     var myApp = angular.module("myApp", []);
        myApp.controller("personController", ['$scope', function ($scope)
        { 
            $scope.people = [{ firstName: "F1", lastName: "L1" },
                { firstName: "F2", lastName: "L2" }, 
                { firstName: "F3", lastName: "L3" }, 
                { firstName: "F4", lastName: "L4" }, 
                { firstName: "F5", lastName: "L5" }]
            $scope.items = [];
            $scope.selectedPerson = $scope.people[0];
            $scope.showDetails = function (ind) 
            { 
                $scope.selectedPerson = $scope.people[ind];
                $scope.items.push($scope.selectedPerson);
            }
            $scope.sayHello = function ()
            {
                return $scope.items.firstName;
            }
        }])

0voto

Miguel Suarez Punkte 192

Falls dies jemand anderem passiert, dokumentiere ich es hier. Ich habe diesen Fehler erhalten, weil ich das ng-model irrtümlicherweise gleich dem ng-repeat Array gesetzt habe:

         {{view}}

Stattdessen:

         {{view}}

Ich habe das Array überprüft und keine Duplikate gefunden, also überprüfe deine Variablen nochmal.

0voto

TheUnKnown Punkte 681

Wenn Sie ein ng-repeat innerhalb eines

Tags aufrufen, können Sie Duplikate zulassen. Siehe diesen Link zur Referenz. Siehe Todo2.html

-1voto

Jay Punkte 1575

Meine JSON-Antwort sah so aus:

{
    "items":  [
        {
            "index": 1, "name": "Samantha", "rarity": "Scarborough","email": "maureen@sykes.mk"
        },{ 
            "index": 2, "name": "Amanda", "rarity": "Vick", "email": "jessica@livingston.mv"
        }
    ]
}

Also habe ich ng-repeat = "item in variables.items" verwendet, um es anzuzeigen.

-1voto

Vishal Solanki Punkte 2405

Duplikate sind in einem Repeater nicht erlaubt. Verwenden Sie den Ausdruck "track by", um eindeutige Schlüssel anzugeben. Repeater: sdetail in mydt, Duplikatschlüssel: string:, Duplikatwert:

Ich habe diesen Fehler bekommen, weil ich den falschen Datenbanknamen in meinem PHP-API-Teil geschrieben hatte......

Daher kann dieser Fehler auch auftreten, wenn Sie die Daten aus einer Datenbank abrufen, deren Name von Ihnen falsch geschrieben wurde.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X