这个问题与我的另一个问题有关; angularjs-multi-level-tables-inside-another-if-clicked。 (你可以在那里看到“完整的”JSON。)
为什么我不能像下面那样进行ng-repeat?
<tbody>
<tr data-ng-repeat="dayData in storeDataModel.storedata[0].data">
<td>{{dayData.date}}</td>
<td>{{dayData.cost}}</td>
<td>{{dayData.sales}}</td>
<td>{{dayData.revenue}}</td>
<td>{{dayData.employees}}</td>
<td>{{dayData.employeeHoursSum}}</td>
</tr>
</tbody>
Angular查找数组“dayData”中此对象“store”的对象数(storedata [0]是第一个商店)但是由于某种原因它创建了n + 1行而不是n并且没有数据在全部在任何行中。
我也试过很多组合,试图让它发挥作用......:
我正在尝试做什么,或者我是否需要编写指令来获取特定的商店dayData信息并为该特定商店放入临时模型然后对临时模型进行ng-repeat?
(另外,因为我试图将这个特定的表作为“假手风琴”的内容,即当点击父表中的一行来展开/折叠并显示这个特定的表(参见我的链接问题) - 是如果我将ng-clicked或own指令与你提出的解决方案一起包括在内,有任何不兼容性吗?)
答案 0 :(得分:2)
在ng-repeat中,你必须迭代一个数组。在您的JSON中,“数据”是一个对象:
{
"data": {
...
"dayData" : [
...
]
}
}
所以,你必须迭代“dayData”:
<tbody>
<tr data-ng-repeat="dayData in storeDataModel.storedata[0].data.dayData">
<td>{{dayData.date}}</td>
<td>{{dayData.cost}}</td>
<td>{{dayData.sales}}</td>
<td>{{dayData.revenue}}</td>
<td>{{dayData.employees}}</td>
<td>{{dayData.employeeHoursSum}}</td>
</tr>
</tbody>
您可以在fiddle
上看到它