1
我试图构建一个应用程序,要求我为每个视图/控制器创建多个查询。Node.js中的多个从属SQL查询
我试图使用嵌套结构异步执行,但sql结果在内部闭包中未定义。
这是使用这样做IM的功能:
var conn = db.config(mysql);
function run_queries(conn,callback) {
conn.query(sql1, var1, function(err, res1) {
if(err){ callback(err); return; }
console.log(res1); // RETURNS SUCCESSFULLY!
conn.query(sql2, var2, function(err, res2) {
if(err){ callback(err); return; }
console.log(res2); // UNDEFINED :(
callback(null, res2);
});
});
}
run_queries(conn,function(err, result){
console.log(result); // UNDEFINED :(
});
我检查我的SQL,它是没有错误。如果我将sq1与sq2交换,则外部闭包将返回sq2的正确查询。
内部闭包不会返回查询。
为什么不使用异步模块代码的
实例? –
Im新的节点,不知道如何应用它在这种情况下 – yevg
http://caolan.github.io/async/了解异步是非常重要的。我将使用async.parallel并为您提供示例。 –