Может ли Promise.all вернуть последнее значение цепочки без обещания обертки?
Без использования await это не работает в моем контексте
Без примера оболочки:
function sum1(x){
return new Promise(resolve => {
setTimeout(t => resolve(x+1),3000)
})
}
const p1 = sum1(1);
p1
.then(sum1)
.then(sum1)
Promise.all([p1])
.then(v => console.log(v[0]));
В нем записывается 2 вместо ожидаемых 4.
Но если я использую обертку, она работает:
function sum1(x){
return new Promise(resolve => {
setTimeout(t => resolve(x+1),3000)
})
}
function sum3(x){
return sum1(x)
.then(sum1)
.then(sum1)
}
const p2 = sum3(1);
Promise.all([p2])
.then(v => console.log(v[0]));
Но в моем контексте это усложняется, если мне нужно создать и назвать функцию-обертку для каждой цепочки обещаний ...
Возможно ли это?