Rumah >hujung hadapan web >tutorial js >Bagaimanakah Saya Boleh Mengakses Keputusan Janji Perantaraan dalam Rantaian Janji JavaScript?
Dalam rantai janji, setiap panggilan balik menerima hasil janji sebelumnya. Walau bagaimanapun, mengakses hasil perantaraan dalam rantaian boleh mencabar.
Untuk mengakses hasil perantaraan, pertimbangkan untuk membahagikan rantaian kepada segmen yang lebih kecil. Daripada melampirkan panggilan balik pada satu janji, lampirkan berbilang panggilan balik pada janji yang sama. Ini menyediakan akses kepada nilai hasil apabila diperlukan.
Perpustakaan Promise menyediakan penggabung seperti Promise.all(), yang menggabungkan berbilang janji menjadi janji tunggal yang diselesaikan dengan tatasusunan yang mengandungi keputusan setiap satu janji.
Andaikan anda mempunyai janji A dan B, dan anda ingin mengakses hasil janji A dalam panggilan balik untuk janji B:
function getExample() { var a = promiseA(…); var b = a.then(function(resultA) { // some processing return promiseB(…); }); return Promise.all([a, b]).then(function([resultA, resultB]) { // more processing return // something using both resultA and resultB }); }
Dalam ES6, anda boleh menggunakan penstrukturan tatasusunan untuk mengakses keputusan dalam panggilan balik terakhir. Dalam ES5, anda boleh menggunakan kaedah pembantu .spread() atau Promise.join() untuk sintaks yang lebih bersih.
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Keputusan Janji Perantaraan dalam Rantaian Janji JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!