Bagaimana Mengendalikan Nilai Pulangan MySQL Secara Asynchronous dalam Node.js dengan Janji?

Barbara Streisand
Lepaskan: 2024-10-26 16:33:02
asal
180 orang telah melayarinya

How to Handle MySQL Return Values Asynchronously in Node.js with Promises?

Memanfaatkan Janji untuk Memproses Nilai Pulangan MySQL dalam Node.js

Dalam peralihan daripada Python kepada Node.js, sifat tak segerak Node. js boleh memberikan cabaran. Pertimbangkan senario di mana anda perlu mengembalikan nilai daripada fungsi MySQL, seperti getLastRecord(nama).

Secara tradisinya, Node.js menggunakan panggilan balik untuk operasi tak segerak. Walau bagaimanapun, untuk mengendalikan sifat tak segerak getLastRecord(), kami akan memanfaatkan Promises.

Untuk melaksanakan fungsi menggunakan Promise:

function getLastRecord(name) {
  return new Promise((resolve, reject) => {
    // Setup MySQL connection and query
    // ...

    connection.query(query_str, query_var, (err, rows, fields) => {
      if (err) {
        return reject(err); // Handle error
      }
      resolve(rows); // Resolve with results
    }); // Callback function
  });
}
Salin selepas log masuk

Untuk mengendalikan nilai yang dikembalikan, anda boleh rantai .then() dan .catch() panggil balik pada Promise:

getLastRecord('name_record')
  .then((rows) => {
    // Handle returned rows here
    console.log(rows);
  })
  .catch((err) => {
    // Handle errors here
    console.log(err);
  });
Salin selepas log masuk

Anda juga boleh melaksanakan semakan bersyarat:

getLastRecord('name_record')
  .then((rows) => {
    if (rows.length > 20) {
      console.log('action');
    }
  });
Salin selepas log masuk

Dengan menerima pakai Janji dalam senario ini, anda memperkenalkan pendekatan yang lebih berstruktur dan boleh dibaca untuk mengendalikan operasi tak segerak, memastikan pangkalan kod yang lebih bersih dan boleh diselenggara.

Atas ialah kandungan terperinci Bagaimana Mengendalikan Nilai Pulangan MySQL Secara Asynchronous dalam Node.js dengan Janji?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!