重新分配范围变量时重新发送

时间:2013-12-01 09:45:43

标签: angularjs

当我的控制器初始化时,它会加载项目,并在简单列表中填充ng-repeat

我有刷新方法,将从服务中重新查询项目:

$scope.items = Service.queryREST()
                      .then(function (result) {               
                          return result.data;
                       });

问题是,当列表已经呈现时,消失,只有在queryREST获得结果后才会重新呈现。

如何摆脱这种退回问题?

1 个答案:

答案 0 :(得分:2)

不要让ng-repeat重复queryREST()返回的承诺。顺便说一句,这在角度1.2中将不再起作用。让它迭代承诺的结果:

$scope.items = [];
$scope.refreshItems = function() {
    Service.queryREST()
           .then(function(result) {               
               $scope.items = result.data;
           });
}

在模板中:

<div ng-repeat="item in items">
    ...
</div>