Использование Promises для обработки возвращаемых значений MySQL в Node.js
При переходе от Python к Node.js асинхронная природа Node.js. js может представлять проблемы. Рассмотрим сценарий, в котором вам нужно вернуть значение из функции MySQL, например getLastRecord(name).
Традиционно 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 }); }
Чтобы обработать возвращаемое значение, вы можете связать обратные вызовы .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'); } });
Применяя Promises в этом сценарии, вы вводите более структурированный и удобочитаемый подход к обработке асинхронных операций, обеспечивая более чистую и удобную в обслуживании кодовую базу.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3