的NodeJS异步数据库函数需要同步的答案 +
生活随笔
收集整理的這篇文章主要介紹了
的NodeJS异步数据库函数需要同步的答案 +
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我是新來的NodeJS和我寫,需要從我去過的所有的函數應該是在這種情況下,讀QUERY我的MySQL數據庫,并返回代碼,我非常希望服務器能夠對其他事件作出回應而這個地方是軌跡查詢請求。然而,它并不特別增光查詢,并只返回值GaGa的。也許我應該將其標記(如果這是你的答案 CodeGo.net,這將是巨大改變編碼的采樣率)反正,這里是我的函數。它給出錯誤回報是不確定的在這一點上最后一行的“近了。有什么建議?
function get_current_username(current_user_id) {
console.log(' | Entered get_current_username');
sqlq = 'SELECT username FROM users WHERE id = ' + current_user_id;
connection.query(sqlq, function(err, rows, fields) {
if (err) throw err;
var current_username = rows[0].username;
console.log(' | the current_username =' + current_username);
});
return current_username;
} +
本文地址 :CodeGo.net/571327/
-------------------------------------------------------------------------------------------------------------------------
1. 通過在回調函數get_current_username然后調用回調函數從內部connect.query論回調:
function get_current_username(current_user_id, callback) {
console.log(' | Entered get_current_username');
sqlq = 'SELECT username FROM users WHERE id = ' + current_user_id;
connection.query(sqlq, function(err, rows, fields) {
if (err) throw err;
var current_username = rows[0].username;
console.log(' | the current_username =' + current_username);
callback(current_username);
});
}
當你去這個函數,那么,你想要回:
get_current_username(12345, function(username) {
console.log("I am " + username);
});
您還可以檢查出承諾/期貨。我覺得我不能夠支持這些司法解釋,我就跳下去大概的了解所承諾的連結此StackOverflow問題。 這是結構的決定,但-人寧愿回調,特別是如果寫模塊由第三方供。 (而事實上,它可能是最好讓你的頭完全纏回調在學習階段在這里,之前通過類似承諾。) +
總結
以上是生活随笔為你收集整理的的NodeJS异步数据库函数需要同步的答案 +的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mybatis使用总结-思维导图
- 下一篇: Transactional Replic