Reputation: 1368
I want to iterate the objects on Weekly basis. Lets Say there are 31 days, and i need to show those 31 dates on weekly basis. I tried by using limitTo: 7
, but unfortunately it is not working. Below the code which i tried.
I want the same div
having class class="accordian-section"
needs to be repeat on every 7 objects. i.e. 1st 7 is in 1 <div>
. And for the next 7 object the same needs to be repeat.
<div class="accordian-section" data-ng-repeat="data in vm.dailyUsageList track by $index | limitTo: 7:7">
<a id="analysisWeek1-title" href="#analysisWeek-1" role="button" data-toggle="collapse" area-controls="analysisWeek-1">Week 1 <span class=""></span></a>
<ul id="analysisWeek-1" area-labelledby="analysisWeek1-title" class="row position-relative panel-collapse collapse">
<span class="sprite arrow grey-arrow"></span>
<li><span class="col-xs-14 padding0">{{data.date | date:'dd MMM yyyy'}}</span><span class="col-xs-2 padding0 text-align-right">{{data.usage}}MB</span></li>
<li><span class="col-xs-14 padding0">{{data.date | date:'dd MMM yyyy'}}</span><span class="col-xs-2 padding0 text-align-right">{{data.usage}}MB</span></li>
<li><span class="col-xs-14 padding0">{{data.date | date:'dd MMM yyyy'}}</span><span class="col-xs-2 padding0 text-align-right">{{data.usage}}MB</span></li>
<li><span class="col-xs-14 padding0">{{data.date | date:'dd MMM yyyy'}}</span><span class="col-xs-2 padding0 text-align-right">{{data.usage}}MB</span></li>
<li><span class="col-xs-14 padding0">{{data.date | date:'dd MMM yyyy'}}</span><span class="col-xs-2 padding0 text-align-right">{{data.usage}}MB</span></li>
<li><span class="col-xs-14 padding0">{{data.date | date:'dd MMM yyyy'}}</span><span class="col-xs-2 padding0 text-align-right">{{data.usage}}MB</span></li>
<li><span class="col-xs-14 padding0">{{data.date | date:'dd MMM yyyy'}}</span><span class="col-xs-2 padding0 text-align-right">{{data.usage}}MB</span></li>
</ul>
</div>
Upvotes: 0
Views: 81
Reputation: 5330
Convert single dimensional array into multi dimensional array. and Iterate Fiddle
function MyCtrl($scope) {
$scope.ArraySplit = function(array, chunk) {
var temparray = [];
for (i = 0, j = array.length; i < j; i += chunk) {
temparray.push(array.slice(i, i + chunk));
}
return temparray;
}
$scope.arrayList = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10,
11, 12, 13, 14, 15, 16, 17, 18, 19, 20,
21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31];
$scope.newList = $scope.ArraySplit($scope.arrayList, 7)
}
Upvotes: 1