2

反応ネイティブでフェッチを使用して AJAX 呼び出しを実装しました。これらの AJAX 呼び出しのキューイングの実装は、あまりうまく実装されていません。誰でも私を助けることができますか?

4

1 に答える 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 は (通常) 1 つのスレッドでのみ実行されるため、このコードはスレッド化を行わないことに注意してください。

于 2016-12-02T10:01:48.803 に答える