我刚刚在 react-native 中使用 fetch 实现了 AJAX 调用。实现这些 AJAX 调用的队列还没有很好地实现。谁能帮我?
问问题
1222 次
1 回答
0
如果你想发出并行请求,你可以使用fetch
返回一个promise给你的事实,然后你可以使用Promise.all
等待所有promise的完成。
例如:
var urls = ['http://url1.net', 'http://url2.net'];
var requests = [];
urls.forEach((url)=>{
request = fetch(url); // You can also pass options or any other parameters
requests.push(request);
});
// Then, wait for all Promises to finish. They will run in parallel
Promise.all(requests).then((results) => {
// Results will hold an array with the results of each promise.
}).catch((err)=>{
// Promise.all implements a fail-fast mechanism. If a request fails, the catch method will be called immediately
});
我注意到您添加了“多线程”标签。重要的是要注意这段代码不会为你做任何线程,因为 JS(通常)只在一个线程中运行。
于 2016-12-02T10:01:48.803 回答