Asynchronous 余烬-在循环中执行异步操作而无需承诺

Asynchronous 余烬-在循环中执行异步操作而无需承诺,asynchronous,ember.js,promise,Asynchronous,Ember.js,Promise,我想知道给定的示例是否可以在真正的服务器上满足竞速条件,是否可以在本地主机上工作。给定情况-用户从表单中删除一些人(比如studyForm和studyPersons)我已将personToDelete添加到数组中稍后的编辑操作我在循环中删除他们 // A punch of persons chosen to be deleted self.markedForDeleted.forEach(function(trashed){ trashed.destroyRec

我想知道给定的示例是否可以在真正的服务器上满足竞速条件,是否可以在本地主机上工作。给定情况-用户从表单中删除一些人(比如studyForm和studyPersons)我已将personToDelete添加到数组中稍后的编辑操作我在循环中删除他们

 // A punch of persons chosen to be deleted
self.markedForDeleted.forEach(function(trashed){
                trashed.destroyRecord();
 });

 this.get('person').save().then(personEditSuccess, personEditFailure);
我应该这样编辑它吗

var onDeleteSuccess = function(wasAnyToDelete){
   if (wasAnyToDelete){
    deletedPersons ++;
   }
   if(deletedPersons === lengthOfAllPersons) { 
     this.get('person').save().then(personEditSuccess, personEditFailure);
   }
};

// A punch of persons chosen to be deleted
self.markedForDeleted.forEach(function(trashed){
                trashed.destroyRecord().then(onDeleteSuccess, onDeleteFailure);
 });

正在工作和正在使用

Ember.RSVP.all(personsToDelete.invoke('destroyRecord')).then(deletePersonSuccess, deletePersonFailure);

很抱歉,我说不出你到底在问什么问题,或者你想解决什么问题。@jfriend00我有一个在本地工作的表单,但是当我在真实环境中执行异步操作时,当真实用户开始使用系统时,会不会有条件或冲突?给出的例子中哪一个更好?有没有一种不用“计数器”就能做到这一点的方法。在最新的示例中,Im逐个删除记录,在计数器点击deleted==toDelete之后,Im继续移动。您可以对承诺数组使用
Promise.all
(RSVP.all?)同时等待所有承诺。@BenjaminGruenbaum是否愿意使用Promise.all重新执行删除forEach的操作?=)@本贾明鲁恩鲍姆添加了rsvp全部。像这样的?!”