Di nodejs, menunggu digunakan untuk menjeda eksekusi dengan cara non-pemblokiran, menunggu permintaan asinkron dari janji, dan menunggu metode asinkron menyelesaikan eksekusi, menunggu dapat digunakan dalam fungsi asinkron untuk menunggu nilai kembalian dari fungsi asinkron ; janji kembali Jika penolakan tidak berhasil, nilai penolakan akan dibuang dan dapat ditangkap dengan "coba/tangkap".
Lingkungan pengoperasian artikel ini: Sistem Windows 10, nodejs versi 12.19.0, komputer Dell G3.
Penggunaan async/await diperkenalkan di Node.js 7 malam, tetapi fungsi async/await hanya dapat diaktifkan secara resmi di Node.js 8 dan Javascript V8.
Apa itu async/menunggu? Cara mengimplementasikan operasi asinkron menggunakan Promise di masa lalu. Kasus berikut menunjukkan cara menggunakan Promise dan Fetch API untuk mengambil data:
fungsi getTrace () { kembali mengambil('https://www.jdon.com', { metode: 'dapatkan' }) } getTrace() .then() .catch()Dengan menggunakan async/await, Anda dapat menghentikan sementara eksekusi dengan cara non-pemblokiran dan menunggu hasilnya kembali. Jika janji mengembalikan penolakan yang gagal, nilai penolakan akan dibuang dan dapat ditangkap dengan coba/tangkap. Kasus di atas dapat ditulis sebagai berikut menggunakan async/await:
function async getTrace () { biarkan pageContenttry { pageContent = menunggu pengambilan('https://www.jdon.com', { metode: 'get' }) } catch (ex) { console.error(ex) } kembalikan pageContent} getTrace() .lalu()Mari kita lihat kasus penggunaan async/await di Node.js, penggunaan setimeout untuk menunda eksekusi suatu fungsi, dan penggunaan enkapsulasi async/await:
// app.jsconst batas waktu = fungsi (penundaan) { kembalikan Janji baru((putuskan, tolak) => { setTimeout(() => { selesaikan() }, tunda) }) } pengatur waktu fungsi async () { console.log ('timer dimulai') menunggu Promise.resolve(timeout(100)); console.log('timer selesai') } timer()Buat file app.js dan jalankan:
simpul app.js
Jika tidak dapat berjalan, mungkin nodejs adalah versi malam dan tidak secara resmi mendukung async/menunggu.
simpul --harmony-async-await app.js
Pembelajaran yang disarankan: "tutorial video nodejs"
Di atas adalah detail cara menggunakan menunggu di nodejs. Untuk informasi lebih lanjut, harap perhatikan artikel terkait lainnya di situs ini!