回调问题设置变量节点

时间:2018-04-24 13:35:05

标签: node.js callback

我是Node的新手,并且还在努力学习回调。我正在尝试编写一个从MySQL数据库读取并返回单个记录的函数。我能够连接到数据库并通过日志记录查看我期望的值,但是从最后一个console.log收到一条错误消息,表明我的变量speechText未定义。下面的代码位于需要将speechText用于其他事物的函数内部。我不确定我做错了什么。

var speechText;

function readRDS(params, callback){

    var connection = MySQL.createConnection({
        host     : 'myDBHost',
        user     : 'myUserName',
        password : 'myPassword',
        database : 'myDBName'
    });

    connection.connect();

    console.log("Connected to DB.");

    var SQL = params.SQL;

    connection.query(SQL, (error, result) => {  
        console.log('Result from within callback: ' + result.length);
        connection.destroy();
        speechText = result[0].Response;
        callback(); 
    });

}


readRDS(params, myResults => {
    console.log('SpeechText: ' + speechText );
});

console.log(speechText);

 //Do something with speechText here

0 个答案:

没有答案