2016-01-18 32 views
1

在我的HTML文件的一个区域,我设置一个范围变量,像这样:迭代类型的字典的阵列角度JS

$scope.my_data = [ 
       { 
         c1: "r1c1", 
         c2: "r1c2", 
         c3: "r1c3", 
         c4: "r1c4", 
       }, 
       { 
         c1: "r2c1", 
         c2: "r2c2", 
         c3: "r2c3", 
         c4: "r2c4", 
       },... 
     ]; 

然后我想遍历它ng-repeat。所以,我做到以下几点:

<tbody> 
     <tr data-ng-repeat="row in my_data"> 
      <tr data-ng-repeat="(column, value) in row"> 
       <td>{$ column $}</td> 
       <td>{$ value $}</td> 
      </tr> 
     </tr> 
</tbody> 

但是我没有看到任何东西出来的列和值

如果我做(row_num, row) in my_data ROW_NUM准确有索引和行具有正确的字典。现在我想展开字典

+0

嗯,你确定你想要'{$ column $}'而不是'{{column}}'? – wil93

+0

@ wil93我通过interpolateProvider使用了不同的开始和结束符号 – sedavidw

回答

2

您嵌套在其他tr标记中的<tr data-ng-repeat="(column, value) in row">的方式最终会成为无效html。我不知道你的最终目标是什么,但如果你只是想的数据显示,你可以有第二ng-repeat嵌套表:

<table> 
    <tbody> 
     <tr data-ng-repeat="row in my_data"> 
     <td> 
      <table> 
      <tr data-ng-repeat="(column, value) in row"> 
       <td>{{column}}</td> 
       <td>{{value}}</td> 
      </tr> 
      </table> 
     </td> 
     </tr> 
    </tbody> 
</table> 

这会产生,我相信你正在寻找的输出,但嵌套表可能是格式化的噩梦。

+0

https://jsfiddle.net/ry9Lugmb/3/ – tzerb