提问者:小点点

用mvc架构连接到Node.js项目中的MySql


我有一个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始终未定义,

有什么问题吗???


共1个答案

匿名用户

控制器可以是:

exports.get_all_users = async function (req, res) {
    var arr = await UserModel.getAllUsers();
    res.send(arr);
}