我有这样的数组
["2017-03-09 ": Array[6], "2017-03-10 ": Array[2]]
在执行ng-repeat
时无效:
<div ng-repeat="total in sortedOrders">
<div class="col-75">{{total.id}}</div>
</div>
fiidle demo 和
请帮忙。
答案 0 :(得分:0)
["2017-03-09 ": Array[6], "2017-03-10 ": Array[2]]
不是数组的语法。
数组是一系列以逗号分隔的值,如下所示:
['one', 'two', 'three']
如果您想存储一系列键值对,则应使用对象:
{
one: 1,
two: 2,
three: 3
}
答案 1 :(得分:0)
您必须对此对象使用两个ng-repeat,因为您在对象内部有数组,并且这些数组也包含对象。 所以首先ng-repeat遍历对象的所有外部值,这个值是一个数组,因此内部循环遍历每个对象的数组,并将对象的id值放入div中。
<div ng-repeat="inner in sortedOrders">
<div ng-repeat="total in inner">
<div class="col-75">{{total.id}}</div>
</div>
</div>
答案 2 :(得分:0)
你有一个数组里面的数组,我从你的安慰图像得到的。 为此,如果要显示所有元素,则必须使用两个ng-repeat循环。
答案 3 :(得分:0)
我认为你正在创建这样的数组: `
var specialArray = [];
// assigning values to corresponding keys
specialArray["Main"] = [{id:1}];
specialArray["Guide"] = [{id:2},{id:3}];
`
但角度模板无法识别(检查我的plunker)。尝试使用普通对象(也可以使用plunker中的示例)。
在您的JSFidlle更改中:
$scope.sortedOrders= [];
to
$scope.sortedOrders= {};
并使用:
<div ng-repeat="(d,value) in sortedOrders">
{{value}}
</div>
示例:Plunker
答案 4 :(得分:0)
在您的plunker中编辑,如:
<div ng-app>
<h2></h2>
<div ng-controller="TodoCtrl">
<div ng-repeat="d in sortedOrders">
<div ng-repeat="(f,value) in d">
{{value.id}}
</div>
</div>
</div>
和
$scope.sortedOrders=[]; to $scope.sortedOrders={};
您将在HTML页面中打印您的ID