如何同时检查多个响应


$scope.placeOrder = function() {
var callbackBalance = apiService.updateBalance($scope.order);
callbackBalance.then(function(data) {
    if(data.data.success) {
      var callback = apiService.createOrder($scope.order);
      callback.then(function(data){
            if(data.data.success)
            {
              localStorageService.cookie.clearAll();
              alert("Order Placed  Successfully");
              $state.go("createOrder");
            }
            else
              alert('Sorry! Cannot place order');
      });
    }
    else
       {
         alert('Cannot update company balance')
      }
  });

这是为公司下订单并根据订单总额更新其余额金额的代码。代码工作正常,但根据此代码,首先调用余额金额 API,一旦响应成功,将调用订单 API 并检查其响应。但是,我们如何检查两者都是否成功,然后只更新余额和订单的数据库。现在的情况可能是公司的余额已更新,但由于某种原因没有下订单。我正在使用 MEAN 堆栈进行开发。

你可以从angular使用$q服务

帮助您异步运行函数并使用其 完成处理后返回值(或异常(。您可以 创建如下请求对象

您可以创建请求数组并将其传递给 $a.all 函数。

var request = [apiService.updateBalance($scope.order), apiService.createOrder($scope.order)]

并使用$q.all函数同时获取提供的请求

 $q.all(request).then(function (response) {
}, function (error) {
});

这将同时获取请求数据。确保将$q添加为依赖项。

相关内容

  • 没有找到相关文章

最新更新