使用 ng-repeat angular 循环对象数组

Loop through an array of objects with ng-repeat angular

我找不到使用 angular 遍历我的 json 对象数组的方法。

我的数组看起来像 firebug(每个对象系列都有一个索引值。):

 [[0], Object { idliste=0, id=1, photo="pot.jpg", plus...}, Object { idliste=0, id=3, photo="pot.jpg", plus...}]

 [[1], Object { idliste=1, id=1, photo="pot.jpg", plus...}, Object { idliste=1, id=3, photo="pot.jpg", plus...}]

 [[2], Object { idliste=2, id=1, photo="pot.jpg", plus...}, Object { idliste=2, id=3, photo="pot.jpg", plus...}]

它是由这段代码产生的:

        var idListe = $scope.getIdListe();
        $scope.listeCommandes[idListe]= new Array([idListe]);

        for (i=0;i<$scope.panier.length;i++){

                        $scope.listeCommandes[idListe].push({
                            idliste:idListe,
                            id:     $scope.panier[i].id,
                            photo:  $scope.panier[i].photo,
                            nom:    $scope.panier[i].nom,
                            quantite:$scope.panier[i].quantite, 
                            prix:   $scope.panier[i].prix,
                            heureajout:$scope.getHeure()
                        });

                    };

$scope.getIdListe = function(){
        var idListe = $scope.listeCommandes.length;
        return idListe;
    };

而 html 是:

<div ng-repeat="idliste in listeCommandes" >
        <div ng-repeat="(nom, id) in idliste">
             {{nom}} : {{id}}
        </div>
</div>

没用。我真的不知道如何让它工作,这意味着,只需按照索引号打印每个对象。

谢谢你,如果你有任何想法。我搜索了论坛,但找不到任何解决方案。也许这是我创建错误索引的方式?

最终通过添加一个名为 angular-filter 的 angular 模块解决了我的问题“在此示例中提到:

http://jsbin.com/weyov/45/edit?html,js,output

非常感谢你的帮助。

现在我的代码看起来像这样:

var idListe = $scope.getIdListe();

    for (i=0;i<$scope.panier.length;i++){

                    $scope.listeCommandes.push({
                        idliste:idListe,
                        id:     $scope.panier[i].id,
                        photo:  $scope.panier[i].photo,
                        nom:    $scope.panier[i].nom,
                        quantite:$scope.panier[i].quantite, 
                        prix:   $scope.panier[i].prix,
                        heureajout:$scope.getHeure()
                    });

                };

和 html :

    <ul ng-repeat="(key, value) in listeCommandes | groupBy: 'idliste'">
  Group name: {{ key }}
  <li ng-repeat="article in value">
    article: {{ article.nom}} 
  </li>
</ul>

然后我的订单现在都在 html 视图中按 ID 自动分组:

    Group name: 0
article: Pots Gris
article: Pot Vert

Group name: 2
article: Pot Bleu
article: Pot Vert
article: Pinceaux

Group name: 5
article: Pots Gris
article: Pot Vert
article: Pot Rouge
article: Pot Bleu