Я использую библиотеку Promise Node.js, и я хотел бы сделать следующее:не Promise.all работать, когда он вернулся из .then() обратного вызова
- Выполнение асинхронной операции, которая возвращает Promise ,
- Когда эта операция завершается, верните обещание, которое будет завершено, когда будут завершены две операции асинхронного параллелизма.
код я использую следующее:
var Promise = require('promise');
var resolved1 = Promise.resolve(1);
var resolvedAll = resolved1.then(function() {
return Promise.all(Promise.resolve(2), Promise.resolve(3));
});
var print = resolvedAll.then(function(values) {
console.log(values);
});
print.done(function() {
console.log('done');
});
Но этот код не работает, как ожидалось, так как он печатает:
[]
done
От доку, Promise.all возвращается обещание, которое решает, когда все обещания в итеративном аргументе решены. Поэтому теоретически разрешено. Все не должно заканчиваться, пока все обещания, переданные Promise.all
, не завершились, но это не то, что здесь происходит.
Любая идея, почему Promise.all не работает должным образом? Может ли это быть ошибкой? Кто-нибудь знает альтернативы для возврата нескольких обещаний из обратного вызова .then()
?
Приветствия, Galder
Дамма, это мой Java ожидания получения списков параметров в пути. Благодаря! –