Как вырваться из цикла ng-repeat?
Следующий случай нужно вырвать из цикла ng-repeat
<div ng-init="myarr=['abc','xyz','pqr','mno','rst']">
<div ng-repeat="item in myarr">
{{item}}
<ng-container ng-if="item=='pqr'">
<!--need to break this loop-->
</ng-container>
</div>
</div>
1 ответ
Вы можете обойти это с помощью индекса item
в myarr
лайк
<ng-container ng-if="(myarr.indexOf(item) < myarr.indexOf('pqr'))">
{{item}}
</ng-container>
и если случай представляет собой массив объектов
например, если массив
`$scope.myarr = [{t:'abc',i:1},
{t:'ghj',i:2},
{t:'rty',i:3},
{t:'qwe',i:4}]`
в HTML
<ng-container ng-if="(myarr.indexOf(item) < breakVar)">
{{item.t + ' ' + item.i}}
</ng-container>
и в контроллере:
$scope.breakVar = $scope.myarr.map(function(x) {return x.i;}).indexOf(3);
с скриптом массива объектов