使用角度

时间:2015-07-03 12:23:59

标签: json angularjs

我正在使用angular从Web服务获取数据,数据采用JSON格式:

    {
    "items": [{
        "id": 2,
        "catId": 1,
        "content": "ddddddddddddddddd",
        "type": 0,
        "comments": [{
            "id": 0,
            "postId": 0,
            "userId": 0,
            "content": "nincompoop",
            "ptime": "2015"
        }, {
            "id": 0,
            "postId": 0,
            "userId": 0,
            "content": "lol",
            "ptime": "2015"
        }],
        "Likes": []
    }, {
        "id": -1,
        "catId": 1,
        "content": "first post",
        "type": 0,
        "comments": [{
            "id": 1,
            "postId": 0,
            "userId": 0,
            "content": "first Comment",
            "ptime": "2015"
        }],
        "Likes": [{
            "id": 1,
            "name": "Rawhi"
        }]
    }]
}

此外,用户ID存储在javascript参数中,如何针对每个帖子迭代'item.likes'并确定用户ID是否存在?谢谢

2 个答案:

答案 0 :(得分:2)

假设您的JSON位于名为rawhi的变量中:

angular.forEach(rawhi, function (item, key){
    angular.forEach(item, function(comment, index){
        comment.userId //you can check if this exists
        //iterate over the likes array:
        angular.forEach(comment.Likes, function (like, i){
            like //you can do whatever you want to do with this
        });
    });
});

基本上,您可以使用嵌套的foreach循环遍历JSON中的数组。

答案 1 :(得分:0)

forEach.item.Likes(function(prop){ alert(prop) });

或者在角度控制器视图内部,您可以使用ngRepeat指令迭代这个,但是在这些对象中的任何一个工作之前,您需要清理该对象。还要从你的代码中删除诅咒词!