Dalam nodej, await digunakan untuk menjeda pelaksanaan secara tidak menyekat, menunggu permintaan tak segerak bagi janji dan menunggu kaedah tak segerak untuk menyelesaikan pelaksanaan boleh digunakan dalam fungsi async untuk menunggu untuk pengembalian fungsi async Nilai; janji mengembalikan penolakan yang tidak berjaya, dan nilai penolakan akan dibuang dan boleh ditangkap dengan "cuba/tangkap".
Persekitaran pengendalian artikel ini: sistem Windows 10, nodejs versi 12.19.0, komputer Dell G3.
Penggunaan async/wait telah diperkenalkan dalam Node.js 7 malam, tetapi ia hanya mungkin untuk mengaktifkan fungsi async/wait secara rasmi dalam Node.js 8 dan Javascript V8.
Apakah async/menunggu? Cara melaksanakan operasi tak segerak menggunakan Promise pada masa lalu Kes berikut menunjukkan cara menggunakan Promise dan Fetch API untuk menangkap data:
function getTrace () { return fetch('https://www.jdon.com', { method: 'get' }) } getTrace() .then() .catch()
Menggunakan async/menunggu, anda boleh menjeda pelaksanaan tanpa menyekat. dan tunggu hasilnya, jika janji mengembalikan penolakan yang tidak berjaya, nilai penolakan akan dibuang dan boleh ditangkap dengan cuba/tangkap. Kes di atas boleh ditulis seperti berikut menggunakan async/await:
function async getTrace () { let pageContent try { pageContent = await fetch('https://www.jdon.com', { method: 'get' }) } catch (ex) { console.error(ex) } return pageContent } getTrace() .then()
Mari kita lihat kes menggunakan async/wait dalam Node.js, menggunakan setimeout untuk melambatkan pelaksanaan fungsi dan menggunakan async /await enkapsulasi:
// app.js const timeout = function (delay) { return new Promise((resolve, reject) => { setTimeout(() => { resolve() }, delay) }) } async function timer () { console.log('timer started') await Promise.resolve(timeout(100)); console.log('timer finished') } timer()
Buat fail app.js ini dan jalankan:
node app.js
Jika ia tidak dapat dijalankan, mungkin nodejs ialah versi setiap malam dan tidak menyokong secara rasmi async/wait Command Apa yang perlu dilakukan:
node --harmony-async-await app.js
Pembelajaran yang disyorkan: "tutorial video nodejs<.>"
Atas ialah kandungan terperinci Cara menggunakan await dalam nodejs. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!