在ng-repeat中获取密钥的名称

时间:2015-11-10 14:29:15

标签: javascript angularjs

我有以下结构:

$scope.data = [
    {
         'category1': {
               'type1': {
                    '2015-11-01': 1,
                    '2015-11-02': 3,
                    '2015-11-03': 2
               },
               'type2': {
                    '2015-11-01': 0,
                    '2015-11-02': 0,
                    '2015-11-03': 1
               }
         },
         'category2': {
               'type1': {
                    '2015-11-01': 0,
                    '2015-11-02': 1,
                    '2015-11-03': 0
               }
         }
    }
];

我想用它创建一个这样的表:

Category1:

-     2015-11-01 2015-11-02 2015-11-03
type1 1          3          2
type2 0          0          1

Category2:

-     2015-11-01 2015-11-02 2015-11-03
type1 0          1          0
type2 0          0          0

我该怎么做?

我一直在想类似的事情:

<div ng-repeat="row in data">
   {{row.key}}
   <table>
      <tr>
         <th>-</th>
         <th ng-repeat="date in row[0][0]">{{date.key}}</th>
      </tr>
      <tr ng-repeat="stat in $index">
         <td>row[$index]</td>
      </tr>
</div>

但它当然不起作用,因为我找不到有关在angular ng-repeat指令中访问密钥名称的任何信息。

我怎么能做到这一切?

1 个答案:

答案 0 :(得分:1)

  

可以让ngRepeat迭代一个属性   使用以下语法对象:

<div ng-repeat="(key, value) in myObj"> ... </div>

https://docs.angularjs.org/api/ng/directive/ngRepeat