我尝试在data [{"5+":[2,1,3]},{"3-5":[0,1,0]},{"1-3":[1,0,3]},{"0.5":[0,0,0]},{"<30":[0,0,0]}]
下面循环
使用下面的代码片段
<tr ng-repeat='sessionLength in [{"5+":[2,1,3]},{"3-5":[0,1,0]},{"1-3":[1,0,3]},{"0.5":[0,0,0]},{"<30":[0,0,0]}]'>
<td ng-repeat="(key, value) in sessionLength">
{{key}}
</td>
<td ng-repeat="(k,v) in sessionLength['5+']" ng-if="sessionLength['5+']">
{{v}}
</td>
<td ng-repeat="(k,v) in sessionLength['3-5']" ng-if="sessionLength['3-5']">
{{v}}
</td>
<td ng-repeat="(k,v) in sessionLength['1-3']" ng-if="sessionLength['1-3']">
{{v}}
</td>
<td ng-repeat="(k,v) in sessionLength['0.5']" ng-if="sessionLength['5']">
{{v}}
</td>
<td ng-repeat="(k,v) in sessionLength['<30']" ng-if="sessionLength['<30']">
{{v}}
</td>
</tr>
下面是我想要的输出
App1 App2 App3
5+ : 2 1 3
3-5 : 0 1 0
1-3 : 1 0 3
0.5 : 0 0 0
<30 : 0 0 0
在上面的循环中需要一些帮助。我没有得到上面提到的预期结果。
发布于 2016-09-21 18:06:53
您可以有三个ng-repeat
,一个用于tbody
,然后分别用于tr & td,但是对于较大的集合,这种方法会影响性能。
在这种情况下,你应该创建自定义过滤器,它将返回格式化的数据,这将减少你的ng-repeat
。
标记
<thead>
<th></th>
<th>App1</th>
<th>App2</th>
<th>App3</th>
</thead>
<tbody ng-repeat="(sessionKey, session) in sessionLength">
<tr ng-repeat="(key, value) in session track by $index">
<td>{{key}} :</td>
<td ng-repeat="v in value"> {{ v}}</td>
</tr>
</tbody>
发布于 2016-09-21 18:16:02
您在sessionLength数组中有重复的值,因此需要使用track by $index来避免出现“不允许在中继器中重复”的错误。这应该行得通。
<tr ng-repeat='sessionLength in [{"5+":[2,1,3]},{"3-5":[0,1,0]},{"1-3":[1,0,3]},{"0.5":[0,0,0]},{"<30":[0,0,0]}]'>
<td ng-repeat="(key, value) in sessionLength">
{{key}}
</td>
<td ng-repeat="(k,v) in sessionLength['5+'] track by $index" ng-if="sessionLength['5+']">
{{v}}
</td>
<td ng-repeat="(k,v) in sessionLength['3-5'] track by $index" ng-if="sessionLength['3-5']">
{{v}}
</td>
<td ng-repeat="(k,v) in sessionLength['1-3'] track by $index" ng-if="sessionLength['1-3']">
{{v}}
</td>
<td ng-repeat="(k,v) in sessionLength['0.5'] track by $index" ng-if="sessionLength['0.5']">
{{v}}
</td>
<td ng-repeat="(k,v) in sessionLength['<30'] track by $index" ng-if="sessionLength['<30']">
{{v}}
</td>
</tr>
发布于 2016-09-21 20:20:08
下面的@Pankaj Parkar是我在结尾处使用的。运行得很好。
<tbody ng-repeat="(sessionKey, session) in compAppsData">
<tr ng-repeat="(key, value) in session track by $index">
<td>{{key}}</td>
<td ng-repeat="v in value track by $index" style="text-align:center"> {{ v}}</td>
</tr>
</tbody>
https://stackoverflow.com/questions/39613340
复制相似问题