我在控制器中声明了一个$ scope变量:
$scope.filteredPayments = [];
我的HTML中有ng-repeat
运行以下内容:
ng-repeat="payment in filteredPayments = payments"
从Parse填充 payments
asynch。它可以正常工作并相应地填充我的表。
以下手表也不会触发:
$scope.$watch('filteredPayments', function(newValues) {
console.log(newValues);
}
为什么我的控制器中没有更新filteredPayments
,特别是因为我没有定义过滤器,它显示了我后端的所有付款?
答案 0 :(得分:0)
看起来您正试图绑定付款以过滤ng-repeat中的付款,例如
filteredPayments = payments
你应该做的是更新$ scope.filteredPayments,因为这就是重复运行的内容。所以也许你的解析(或任何你喜欢的)的$ q承诺然后设置。有点像这样的东西(我再也不知道你是如何得到你的数据的。
//retrieve new data
.then(function(newData){
$scope.filteredPayments = newData;
});
或者可能是简单的事情,只要您确定付款变量更新如下:
$scope.filteredPayments = payments;