我想使用 Koa 和mysql
node 包从我的 MySQL 数据库中获取一些数据。我在看co-mysql,但自述文件建议使用thunkify
直接使用。所以我做了以下事情:
const query = thunkify(connection.query.bind(connection));
这似乎可行,就像我现在可以做的那样:
app.use(function * main() {
const races = yield query(
"SELECT * FROM `races` where '2016-01-19' between start_date and end_date"
)(function(err, rows) {
// rows is the data I need
});
});
但是,我找不到将 thunk 中的行数据返回/生成到我的 races 变量中的方法。我记录它,它显示正确的数据,但是当我尝试将它传回时,它总是返回未定义的。我从回调内部尝试了几种方法,但我似乎无法弄清楚:
return rows
yield rows
(使回调成为生成器函数)
return yield rows
...
我经常得到:TypeError: You may only yield a function, promise, generator, array, or object, but the following object was passed: "undefined"