私のDBに接続してその中の何かを調べるこの機能があります。関数からの結果を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