AngularJS如何在多个ajax请求成功后调用函数?

时间:2016-03-09 06:39:11

标签: javascript angularjs

我正在使用for循环来发送ajax请求以删除数据表中的多个项目。在所有请求成功后,我有什么办法可以调用函数吗?在每个请求之后调用函数会给我的数据表带来一些问题,如果在循环外调用函数导致它们是异步请求,它也无法正常工作

    for(var i = 0; i < $scope.selectedRows.length; i++) {
      $http({
        method: 'DELETE',
        url: $scope.url + '/' + $scope.selectedRows[i].name + '?recursive=true'
      })
      .then(function(res) {
       // $scope.clearSelect();
       // $scope.dtInstance.rerender();
       // $mdDialog.hide();
      }, function(res) {
        console.log('error');
      })
    }

1 个答案:

答案 0 :(得分:3)

您应该收集请求的承诺并使用

$q.all(promises).then(...)

请看这里:wait for all $http requests to finish