web-dev-qa-db-fra.com

Comment parcourir les angular $ scope avec une boucle

Je veux parcourir les variables $ scope avec une boucle for comme celle-ci. Dans cet exemple, l'objet $ scope comprend un objet comptes comprenant 5 objets, dont les noms sont des nombres de 1 à 5. Chacun d'eux a un nom.

for(var i = 1; i < 5; i++){
   $('#name').val($scope.accounts.i.name);
}

Le problème: $ scope.accounts.i est indéfini car i ne compte pas comme une varibale dans la variable $ scope . Il compte comme la lettre i, donc je ne vois aucune chance de parcourir une portée avec une boucle for. Lorsque j'utilise "" autour de la variable $ scope, elle sera simplement affichée en html ordinaire et angular n'est pas interprété.

24
Sorcerer

La façon angulaire de faire ci-dessus est

 $scope.accounts=[{name:"123"},{name:"124"},{name:"125"}]

            angular.forEach($scope.accounts,function(value,index){
                alert(value.name);
            })
45
Ajay Beniwal

Si les comptes sont un tableau, vous pouvez utiliser l'indexeur de tableaux:

for(var i = 1; i < 5; i++){
   $('#name').val($scope.accounts[i].name);
}
1