我为用户提供了大量数据'几小时的可用性,格式为:
availData = { "date1":arrayOfUsers, "date2":arrayOfUsers, ... }
arrayOfUsers= [ userArray, userArray, ... ]
userArray= [ "username", "h0", "h1", "h2", ... "h23" ]
我有arrayOfUsers
的格式,所以我可以根据他们的" h0" ..." h23"值。
这一切都适用于一个视图,但我现在想要使用相同的数据并创建一个包含以下内容的表,用于一个选定的"用户名":
date1 h0 h1 h2 ... h23
date2 h0 h1 h2 ... h23
...
到目前为止,我可以做到这一点:
<!-- rows of avail data... -->
<tr ng-repeat="(aDay,aUsers) in allAvailData track by $index">
<td >{{aDay}}</td>
<td ng-repeat="aUser in aUsers" ng-show="aUser[0]=='YR005'" >
<span ng-repeat="hour in aUser track by $index" ng-show="!$first">{{hour}}
</span>
</td>
</tr>
提供2列表格行:"date" "h0h1h2h3h4"
但我真正想要的是单独的条目...... 不起作用:
<!-- rows of avail data... -->
<tr ng-repeat="(aDay,aUsers) in allAvailData track by $index">
<td >{{aDay}}</td>
<span ng-repeat="aUser in aUsers" ng-show="aUser[0]=='YR005'" >
<td ng-repeat="hour in aUser track by $index" ng-show="!$first">{{hour}}</td>
</span>
</tr>
我没有长时间使用角度,我想知道这种事情是否可行,而不仅仅是将数据重组为另一个阵列。
问题是:
答案 0 :(得分:2)
如果您执行类似
的操作,它应该可以正常工作<tr ng-repeat="(aDay,aUsers) in allAvailData track by $index">
<td >{{aDay}}</td>
<td ng-repeat="hour in getSelectedUser() track by $index" ng-show="!$first">{{hour}}</td>
</tr>
实施getSelectedUser
方法,根据您的过滤器逻辑从arrayofusers
返回单个项目。