bluebird
Promise.all
Ricerca…
Osservazioni
Promise.all(
Iterable<any> | Promise<Iterable<any>> input
) -> Promise
Questo metodo è utile quando si desidera attendere il completamento di più di una promessa.
Dato un Iterable (gli array sono Iterable ), o una promessa di un Iterable , che produce promesse (o un mix di promesse e valori), itera su tutti i valori in Iterable in un array e restituisci una promessa che si adempie quando tutte le gli elementi dell'array sono soddisfatti. Il valore di adempimento della promessa è un array con valori di adempimento nelle rispettive posizioni dell'array originale. Se una qualsiasi promessa nell'array viene respinta, la promessa restituita viene respinta con il motivo del rifiuto.
var files = [];
for (var i = 0; i < 100; ++i) {
files.push(fs.writeFileAsync("file-" + i + ".txt", "", "utf-8"));
}
Promise.all(files).then(function() {
console.log("all the files were created");
});
Questo metodo è compatibile con Promise.all da promesse native.
Aspettando che succedano due cose
var firstItem = fetch("/api1").then(x => x.json());
var secondItem = fetch("/api2").then(x => x.json());
Promise.all([firstItem, secondItem]).spread((first, second) => {
// access both results here, both requests completed at this point
});
Modified text is an extract of the original Stack Overflow Documentation
Autorizzato sotto CC BY-SA 3.0
Non affiliato con Stack Overflow