我不知道 如何正确地将返回的数据从资源添加到promise数组。当我将它登录到控制台时它是空的。
这里是我的代码:
var d = $q.defer();
var promises = [];
_.each(recipe.credentials, function(credential) {
APIService.save({route:'credential'},credential).$promise.then(function(data) {
promises.push(data)
});
});
$q.all(promises).then(function(data) {
console.log(data);
d.resolve();
});
return d.promise;
更新的代码:
var d = $q.defer();
var promises = recipe.credentials.map(function(credential) {
return APIService.save({route:'credential'},credential).$promise;
});
return $q.all(promises)
不知道...但它适用于.save! – nofear87
忘记创建延迟对象,只是'返回$ q.all(...'。如果您希望在外部访问它,您可能还想在'then'处理程序中返回数据' – Phil