问题标签 [promise.all]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - 循环内的 Javascript Promise.all()
我试图在循环内进行两次 Web API 调用,然后等到 webAPI 返回,然后再将返回的值作为子数组推送到更大的数组中。这是我的代码:
在 Promise 中调用的 googlePlace 函数:
我期待 console.log('latlong should print after this') 在打印 latlngPairs 之前打印出来。因为顺序相反,所以 latlngPairs 填充有未定义值的子数组。输出类似于:
需要明确的是,我想要实现的顺序是'latlong 应该在此之后打印'然后'[[obj,obj],[obj,obj]]。我想我一定对 promise.all 的工作方式有一些基本的误解,任何帮助都将不胜感激!
javascript - Promise 包装在 catch 子句中并在 Promise.all 中等待
- 承诺的文档状态
.catch()
返回一个承诺。这是否意味着如果您在代码中返回一个 Promise,它将被包装在 .catch 的另一个 Promise 中?
IE
上述以“test”值解析的承诺是否会被包装在 .catch 的另一个承诺中?据我了解,这就是异步函数中发生的情况;他们将任何结果都包装在“幕后”的承诺中。这可能导致双重承诺,这是否也发生在这里?
- 如果将上面变量 x 中的承诺放入现有数组并传递给
Promise.all()
,那么什么会构成被解析?在 Promise.all 解决之前,catch 块和内部函数是否必须完成?如果是这样,为什么会这样?为什么 Promise.all 不会在第一个 Promise.reject() 执行后立即解决?它怎么知道等待?
reactjs - 拒绝 Promise.all
我有一个 aysnc 函数,它获取数据并返回Promise.all
ie的值
我这样称呼这个函数:
但它永远不会被捕获。为什么是这样?如果所有的承诺都没有解决,我如何让它拒绝?
谢谢
javascript - 获取 .json 不是 Promise.all w/fetch 上的功能
哦,我又一次遇到了那些 Promise.all blues :( 我有一个函数,它从提供的 url 中创建一个 fetch 调用数组,然后我们想通过 Promise.all 检索数据并返回响应数组,或者更好的是只返回 promise调用函数。问题是这会导致控制台显示错误:
该函数的代码是:
并且在 Vue 组件中
显然 LeagueLeadersResponseArray 是未定义的。我研究了 .json() 并没有看到我是如何错误地使用它的。起初我以为我需要一个 Promise.all 包装器,用于responses.map((r) => r.json()) 但这也没有好处。我查看了这个链接,但我没有像他一样使用 fetch 。非常感谢任何指导....
更新了其他人的工作代码:
javascript - 如何将 JS 承诺转换为另一个对象
所以我有一个需要多次调用的异步函数。当然,我想使用 Promise.all
好的,没问题,但我怎么知道哪个 id 与哪个结果?当然我可以再次遍历这两个数组,但是还有另一种方法吗?有没有一种方法可以创建一个承诺,当解决后会给我一个包含 id 和 result 的对象?
谢谢!
javascript - 获取数组中的每个项目
所以我很确定这与Promise.all
或类似的事情有关,但我不知道该怎么做。如果有人可以帮助我解决此代码,将不胜感激。
注意:如果重要的话,我要映射的数组是一个对象数组
我什至无法启动此代码,但我不确定我应该做什么......
这是我在 Visual Studio 代码中的错误。
javascript - 将 promise.all 中的值添加到数组
我正在使用 Promise.all 调用多个 api 调用并且能够接收它们的响应,但我想将它们添加到数组中
我的代码
我能够记录来自 的响应console.log(values);
,但这些没有被推送responseDetails
javascript - promises.push() 立即运行,不等待 promises.all()
我有一个 nodejs 函数processReviews(workflow)
,当被调用时,它应该将多个承诺推送到一个数组,然后在 for 循环promises[]
之后运行它们。promises.all()
但是当我运行我的代码时,输出如下所示:
这意味着每次我向我的 promises[] 数组 ( promises.push( await examplePromiseFunc() )
) 推送一个 promise 时,该函数examplePromiseFunc()
都会立即被调用并且不会等待。
我希望我的函数只在我await Promise.all(promises)
最后运行时被调用,有什么我遗漏的吗?我的异步函数会导致问题吗?我一直在阅读 javascript promises.all ,这似乎是一个很好的实现。
javascript - 从 API 获取结果返回未定义
我正在尝试从 API 获取数据,但结果一直未定义。我正在使用 promise.all 链接 API 调用,然后链接 promise 以对数据执行其他操作。我似乎无法将我的结果传递给州。
这是有问题的代码: