我有一个mvc架构的Node.js项目,我试图将它连接到mysql数据库,并编写一个查询,我得到了查询结果,但是当我试图调用声明查询的函数时,我得到了一个空的结果,我猜这是因为查询调用是异步的。在我的模型中:
exports.getAllUsers = function () {
con.connect(function (err) {
if (err)
console.log('error')
else
con.query("SELECT * FROM Users", function (err, result, fields) {
if (err) throw err;
else {
return result;
}
});
});
}
在我的控制器中:
exports.get_all_users = function (req, res) {
var arr = UserModel.getAllUsers();
res.send(arr);
}
get_all_users
函数中的arr
始终未定义,
有什么问题吗???
控制器可以是:
exports.get_all_users = async function (req, res) {
var arr = await UserModel.getAllUsers();
res.send(arr);
}