我有一个名为
如果API调用成功,我希望从
queue
的数组,当对象被修改时,我会将它们推送到这个数组中。如果用户按下save
,那么我将循环遍历queue
并为它们应用适当的API调用。如果API调用成功,我希望从
queue
中移除该项,否则将其保留在其中,并通知用户一些项目未成功保存。我目前使用的是AngularJS。var unsuccessfulItems = [];
var promise = queue.map(function(item) {
var defer = $q.defer();
myCallFunction( item
, function( response ) {} // Success
, function( response ) { // Error
unsuccessfulItems.push(item);
}
)
defer.resolve();
return defer.promise;
})
// Once all items have been processed
$q.all( promise ).then( function() {
queue = unsuccessfulItems;
});
有没有更好的方法来做这件事?
filter
:https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Array/filter? - Sam Giles