相关疑难解决方法(0)

数组上的JavaScript .map,如果条件满足则删除项目

我有一个数组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;
});
Run Code Online (Sandbox Code Playgroud)

有没有更好的方法呢?

javascript iteration map promise angularjs

6
推荐指数
1
解决办法
1376
查看次数

标签 统计

angularjs ×1

iteration ×1

javascript ×1

map ×1

promise ×1