Javascript 带post请求的每个循环的角度

Javascript 带post请求的每个循环的角度,javascript,angularjs,Javascript,Angularjs,我尝试使用angular.forEach循环发出post请求,然后使用$q.all()解析单个承诺 我是这样设置的: angular.module('dataApp') .factory('UserService', function () { var User = $resource(ENV.API_URL + '/user/:email', { email: '@email' }, { add: { method: 'POST',

我尝试使用angular.forEach循环发出post请求,然后使用$q.all()解析单个承诺

我是这样设置的:

angular.module('dataApp')
  .factory('UserService', function () {
    var User = $resource(ENV.API_URL + '/user/:email', {
      email: '@email'
    }, {
      add: {
        method: 'POST',
        url: ENV.API_URL + '/user/:email/medication/:medicationId',
        params: {
          email: '@email',
          dataId: '@medicationId'
        }
      }
    });

    User.addData = function (dataList) {
      var promiseArray = [];

      angular.forEach(dataList, function (data) {

        User.add({
          email: currentUser.email,
          dataId: data._id
        }).$promise.then(function success(response) {
          promiseArray.push(response.$promise);
        }, function error(response) {
          promiseArray.push(response.$promise);
          promiseArray.push(response.$promise);
        });
      });

      return $q.all(promiseArray);
    };
  });

当我尝试将承诺推送到promiseArray中时,我的数组中填充了空引号(例如console.log(promiseArray)==>[“”,“”)。我遗漏了什么吗?

为什么要使用
add
?对于这种情况,有
save

无论如何,试试这个:

promiseArray.push(User.add({
                      email: currentUser.email,
                      dataId: data._id
                 }).$promise);

当你进入一个转折点时,$promise看起来像什么?