cari

Rumah  >  Soal Jawab  >  teks badan

javascript - Bagaimana untuk melaksanakan pelbagai janji bersarang dalam gelung?

Keadaan umum adalah seperti berikut:

Pertama-tama dapatkan tatasusunan (wilayah) daripada permintaan, abaikan langkah ini, ia telah diproses sebelum ini
Lintas tatasusunan ini untuk mendapatkan maklumat yang diperlukan. Ini membolehkan N permintaan tak segerak dihantar.
Proses data yang dikembalikan selepas semua permintaan tak segerak ini selesai.

Masalah yang saya hadapi di sini ialah setiap kali ia seolah-olah pergi terus ke kaedah luar kemudian bukankah semua perkara dalaman harus diselesaikan sebelum memasuki kaedah luar kemudian? Bagaimanakah saya harus menulis semula soalan saya?

var promises = [];
promises = regions.map(function (region) {
  return new Promise(function(resolve) {
    Promise.all([asyncRequest1(region), asyncRequest2(region), asyncRequest3(region), asyncRequest4(region)])
    .then(function (reses) {
      resolve(reses);
    });
  });
  
});

Promise.all([promises]).then(function(results) {
  handle(results);
});
漂亮男人漂亮男人2714 hari yang lalu1378

membalas semua(1)saya akan balas

  • 代言

    代言2017-06-28 09:31:10

    Promise.all([promises])promises Sudah menjadi array

    balas
    0
  • Batalbalas