对Angular中的复杂json对象进行ng-repeat(迭代)

时间:2015-06-19 18:06:09

标签: javascript json angularjs ng-repeat

一个控制器返回一个非常复杂的json对象:

{
"184": {
    "title": "THE STONE ROSES",
    "sessions": {
        "1443564000000": {
            "num": 5
        },
        "1442959200000": {
            "num": 1
        },
        "1447196400000": {
            "num": 1
        },
        "1444428000000": {
            "num": 2
        },
        "1446332400000": {
            "num": 3
        }
    }
}

}

我试图在我的视图上迭代它

<div class="large-6 columns" ng-repeat="item in showItems" st-raw>
    <h1>{{item.sessions}}</h1>
 </div> 

使用此代码,如果对象打印在html响应中,我将获得部分:

{"1443564000000":{"num":1}}

但正如您所看到的,会话具有非常复杂的属性(我使用会话的ID来存储它的数量)

我已经看到有些人习惯用ng-repeat-start做这个,在我使用它的情况下给了我几个错误..

1 个答案:

答案 0 :(得分:4)

假设您要遍历<tr ng-repeat="(key, value) in data">属性(不是数组而是对象),则必须迭代对象的属性:

{{1}}

以下是一个示例:http://plnkr.co/edit/7AQF6k7hf2aZbWFmhVoX?p=preview

相关的SO问题示例来自:How can I iterate over the keys, value in ng-repeat in angular