Promise を利用して Node.js で MySQL 戻り値を処理する
Python から Node.js への移行における、Node.js の非同期の性質。 js には課題が存在する可能性があります。 getLastRecord(name) などの MySQL 関数から値を返す必要があるシナリオを考えてみましょう。
伝統的に、Node.js は非同期操作にコールバックを使用します。ただし、getLastRecord() の非同期の性質を処理するには、Promises を利用します。
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 }); }
戻り値を処理するには、次のようにチェーンします。 Promise への .then() および .catch() コールバック:
getLastRecord('name_record') .then((rows) => { // Handle returned rows here console.log(rows); }) .catch((err) => { // Handle errors here console.log(err); });
条件チェックも実装できます:
getLastRecord('name_record') .then((rows) => { if (rows.length > 20) { console.log('action'); } });
このシナリオで Promise を採用することで、非同期操作を処理するためのより構造化された読みやすいアプローチにより、コードベースがよりクリーンで保守しやすくなります。
以上がPromise を使用して Node.js で MySQL の戻り値を非同期的に処理する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。