如何从该函数返回值?

用户3.14

这是我的node.js项目中的代码,但是我无法访问的值connection2我在某处读到.getConnection是异步函数,因此无法以这种方式获取connection2的值。如何修改此代码以正确返回值?

var mysql = require('mysql');
    var connectionPool = mysql.createPool({
        host: 'localhost',
        user: 'root',
        password: '',
        database: 'rockcity_followme'
    });
exports.connExport=function() {
    var connection2;
    connectionPool.getConnection(function (err, connection) {
        connection2=connection;
    });
    return connection2;
}
丰满的

您无法在此处返回连接。它必须是异步的,因此您将回调作为参数,并在建立连接后调用该回调。

exports.connExport=function(callback) {
    connectionPool.getConnection(function (err, connection) {
        callback(connection);
    });
}

请参阅有关异步VS在节点同步功能的更多信息。


当一个函数异步地执行任何操作时,它必须一直是异步的。要从connExport另一个模块使用,必须异步使用。

var yourModule = require("yourModule");
yourModule.connExport(function(connection) { // <-- the callback function
    // you can use connection here
});

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章