gpt4 book ai didi

javascript - 如何访问 promise 内 promise 返回的值

转载 作者:太空宇宙 更新时间:2023-11-04 03:18:27 25 4
gpt4 key购买 nike

是否可以在 Promise 之外访问 result2 的值。如果是的话我该怎么做

示例

someFile1.someFunction1(req).then((result1)=>{
.
.
.
.

someFile2.someFunction2(req).then((result2)={
return(result2);
});

return(result1+result2);

})

最佳答案

注意:我假设它们的嵌套是有原因的。否则,使用 Promise.all 并行运行它们,并将解析时收到的数组相加。

如果我假设您的代码确实基本上如图所示,那么 . 不会引入太多复杂性,有几种方法,但该示例中最简单的方法可能就是嵌套 promise 处理程序:

someFile1.someFunction1(req)
.then((result1) => {
return someFile2.someFunction2(req)
.then((result2) => {
return result1 + result2;
});
})
.then(combined => {
// Use the combined result
});

或者使用简洁的箭头函数:

someFile1.someFunction1(req)
.then(result1 =>
someFile2.someFunction2(req).then(result2 => result1 + result2)
)
.then(combined => {
// Use the combined result
});

或者当然,使用async函数和await:

const result1 = await someFile1.someFunction1(req);
const result2 = await someFile2.someFunction2(req);
const combined = result1 + result2;

甚至

const combined = (await someFile1.someFunction1(req)) + (await someFile2.someFunction2(req));

关于javascript - 如何访问 promise 内 promise 返回的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53304910/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com