ES6 Promises - so etwas wie async.jeder?

Bild zu versuchen-heraus, wie um etwas zu finden, die funktional genau wie async.eachSeries, ich brauche eine Liste von asynchronen Aktionen nacheinander ablaufen (nicht parallel), aber kann nicht einen Weg finden, es zu tun im einheitlichen ES6, kann mir jemand raten, bitte?

p.s. Gedanken über Generatoren/yield, haben aber nicht die Erfahrung, aber ich bin mir nicht klar, wie genau Sie mir helfen können.

Bearbeiten 1

pro Anfrage, hier ein Beispiel:

Ausgehen, dass sich dieser code:

let model1 = new MongooseModel({prop1: "a", prop2: "b"});
let model2 = new MongooseModel({prop1: "c", prop2: "d"});

let arr = [model1 , model2];

Nun, ich will laufen über Sie in einer Reihe, nicht parallel, also mit der "async" - NPM ist es ganz einfach:

async.eachSeries(arr, (model, next)=>{
    model.save.then(next).catch(next);
}, err=>{
    if(err) return reject(error);
    resolve();
})

Meine Frage ist: mit ES6, kann ich es nativ? ohne die NPM 'async' - Paket?

Edit 2

Mit async/await-es kann leicht gemacht werden:

let model1 = new MongooseModel({prop1: "a", prop2: "b"});
let model2 = new MongooseModel({prop1: "c", prop2: "d"});    

let arr = [model1 , model2];

for(let model of arr){
    await model.save();
}
  • Du meinst, die zweite Funktion hängt vom Ergebnis der ersten Funktion?
  • Es ist nicht, muss es abhängen, sondern muss ausgeführt werden, nachdem der Vorherige getan hat.
  • Sie sollten ein Beispiel geben und den sample-input und erwarteten output, um das problem zu erklären richtig.
  • Zugegeben ein Beispiel, danke!
Schreibe einen Kommentar