是否可以在复杂的 json 格式中使用 ng-repeat?

Is it possible to use ng-repeat in a complex json format?

这是 json 格式:

{"data": {
    "asd": {
        "index": "2",
        "x": "dsds",
        "y": "dsadsa"
    },
    "sfs": {
        "index": "1",
        "x": "dsds",
        "y": "dsds"
    }
}}

我想使用 angularjs 的 ng-repeat 显示这些数据索引、x 和 y 值。但是我想不出 {{ }} 里面的格式是什么。

我已经做了一些研究,但大多数人建议更改格式。如果不能更改格式怎么办?我仍然可以使用 ng-repeat 显示它吗?

如果您使用正确的语法并访问正确的值,您基本上可以在 ng-repeat 中显示任何内容。

我创建了一个演示 jsfiddle,它显示了您对象中的所有项目。

HTML:

<div ng-app="APP" ng-controller="TST">
    <div ng-repeat="(key,val) in test_obj.data">
        <p>{{key}}</p>
        <p ng-repeat="(k,v) in val">{{k}} - {{v}}</p>
    </div>    
</div>

JS:

var APP = angular.module('APP', []);

APP.controller('TST', ['$scope', function($scope) {
    $scope.test_obj = {
        "data": {
            "asd": {
                "index": "2",
                "x": "dsds",
                "y": "dsadsa"
            },
            "sfs": {
                "index": "1",
                "x": "dsds",
                "y": "dsds"
            }
        }
    };
}]);

怎么样:

<tr ng-repeat="(key, value) in dataContainer.data">
    <td>{{ value.index }}</td>
    <td>{{ value.x }}</td>
    <td>{{ value.y }}</td>
</tr>

工作示例:http://jsfiddle.net/pk7a44f7/1/