【发布时间】:2017-09-12 19:07:53
【问题描述】:
我正在使用 Express 和 MySQL,我希望能够从 connection.query 检索数据,然后在同一路由中的其他函数中使用该数据。我希望能够在 app.post 的另一个函数中使用在 connection.query 中创建的数组,但是我不知道这样做的最佳方法是什么。我曾尝试使用 Express 所需的单独文件中编写的实用程序函数,但我无法将 MySQL 连接中的数据获取到写入外部文件中的函数中,我什至不确定这是否是正确的方法做我想做的事。
这是我的代码,我想做的可能是能够将forEach 方法放在它自己的函数中,然后在查询之后在另一个函数中使用返回的数组来处理它等等开。
app.post('/submit', function(req, res) {
var getPosition = "SELECT ID, position FROM routes";
var posArray = [];
connection.query(getPosition, function(err, results) {
if (err) throw err;
results.forEach(function(item) {
posArray.push(item.position);
return posArray;
}); //end if
});
}); // end app.post
【问题讨论】:
-
你的
return毫无意义。 -
你需要使用回调或承诺。
标签: javascript mysql node.js express