【发布时间】:2018-07-04 05:28:53
【问题描述】:
我是 nodejs 的新手,当我写一个函数时,它不能在函数中返回一个值。我从 mysql 获取结果然后返回函数。我知道原因是因为 nodejs 默认是异步的。我该如何解决我的问题?这是我的源代码:
function getSlaveURL() {
var sqlQuery = "SELECT url FROM `slave` WHERE `id`='2' LIMIT 1";
var returnValue = "";
db.query(sqlQuery, function (error, rows) {
if (error) {
returnValue = "";
} else {
returnValue = rows[0]['url'];
console.log("in function result: " + returnValue);
}
});
return returnValue;
}
console.log("out function result: " + getSlaveURL());
=> 结果:
输出函数结果:
在函数结果中:http://localhost/mynodejs_slave/
请帮我解决这个问题。 谢谢!
【问题讨论】:
标签: node.js nodes node-modules async.js