Я пытаюсь заполнить список div, используя ng-repeat.Я также использую структуру, которая имеет глубину (поэтому я могу перемещаться по элементам списка).
Чтобы установить эту глубину, мне нужно вызвать функцию getTotalDepths
, которая проверяет текущий индекс элемента списка со значением tempIndex
.Если они отличаются, он должен увеличить общую глубину и затем вернуть значение totalDepths
.
После того, как я его запустил, возникает следующая ошибка (примерно 25000 раз):
UncaughtОшибка: [$ rootScope: infdig] `http://errors.angularjs.org/1.6.10/$rootScope/infdig?
HTML:
<div style="display: inline-block;" ng-repeat="item in items">
<div class="item-list" focusable data-focusable-depth="{{getTotalDepths($index)}}">
<img class="img-fluid" ng-src="{{item.picture}}" />
</div>
</div>
Контроллер:
$scope.totalDepths = -1;
var tempIndex = -1;
var x;
$scope.getTotalDepths = function (index) {
x = $scope.totalDepths;
if (tempIndex != index) {
tempIndex = index;
x = $scope.totalDepths += 1;
}
return x;
}
Примечание: ошибка возникает, когда яувеличить totalDepths
в этой строке:
x = $scope.totalDepths += 1;
Любая помощь очень ценится!