Почему я получаю RangeError: Превышен максимальный размер стека вызовов при наблюдении за изменением родительской переменной области (отфильтрованный массив ng-repeat)? - PullRequest
0 голосов
/ 30 сентября 2019

Моя проблема в том, что я хочу следить за изменениями в фильтрованном массиве, созданном с помощью ng-repeat, для этого я ссылаюсь на родительскую область видимости, так как я узнал, что ng-repeat создает собственную область видимости, и во время просмотра массивас $ scope. $ watch действительно работает (он точно обнаруживает изменения в массиве), я получаю несколько ошибок в журнале консоли, говоря: angular.js: 12520 RangeError: Превышен максимальный размер стека вызовов. У кого-нибудь есть какие-либо сведения о том, что я могу сделать, чтобы решить эту проблему?

HTML: <div class="module-card" ng-repeat="module in ($parent.filteredModules = (modules | released : true | moduleFilter : allFilters | unique: 'name' | orderBy : sortFunc : orderedAsc | limitTo : limitResults)) track by $index">

JS:

$scope.$watch('filteredModules', function(newVal, oldVal){
   console.log(newVal, oldVal);
}, true)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...