我有這個函數可以連接到我的數據庫並查閱其中的某些內容。將結果從一個函數傳遞給nodejs上的另一個函數
function conn (text){
var mysql = require("mysql");
var connection = mysql.createConnection({
connectionLimit : 100, //important
host : 'xxx.xxx.xxx.xxx',
user : 'xxxxxx',
password : 'xxxxxxx',
database : 'xxxxxxxx'
});
connection.connect();
var queryString = 'SELECT usuario.idUsuario FROM usuario WHERE usuario.nickname = ' + '"' + text + '"';
function getID(text, callback){
connection.query(queryString, function(err, rows, fields) {
var id;
if (err){
callback(err, null);
}else{
for (var i in rows) {
id = rows[i].idUsuario;
}
callback(null, id);
}
});
}
var result;
getID(text, function(err, content) {
if (err) {
console.log(err);
} else {
result = content;
}
});
connection.end();
};
現在,我需要得到的結果在其他變量使用它在其他功能我的JS文件中。我怎樣才能得到該值,而無需在變量內獲取代碼?
你不能做到這一點。你需要在任何地方使用回調或承諾。 http://blog.slaks.net/2015-01-04/async-method-patterns/ – SLaks
im在函數getID中使用calbacks,但也許我做這個回調的錯誤 –
你需要從你的函數返回值也使用回調。 – SLaks