等待过滤的$ scope模型更新

时间:2014-07-03 17:41:48

标签: angularjs angularjs-ng-repeat

我使用ng-repeat并使用我的过滤集合设置$ scope变量

<tr ng-repeat="r in filteredData = (data | filter: {Number: num} | filter: eFilter)">

在我的控制器中:

        $scope.num = undefined;
        console.log($scope.filteredData.length); //returns 10
        $scope.num = 2
        console.log($scope.filteredData.length); //expecting 5
        $scope.num = undefined;
        console.log($scope.filteredData.length); //expecting 10, however, it  actually      returns 5. 

如果我对其施加超时,例如下面,我得到预期的10.我宁愿不使用超时 - 我确定有一些我可以调用的角度函数,也许是强制消化循环的函数?希望有人可以解释如何正确等待$ scope.filteredData更新以反映过滤器更改。

        setTimeout(function () { console.log($scope.filteredData.length); }, 1); // returns 10

0 个答案:

没有答案