我一直在Node.js编码:
var sql = ' SELECT 1 AS re';
for(var i=0;i<10;i++){
connection.query(sql,function(err,rows){
if(err){connection.rollback(function (e) {throw err;});}
else{
console.log('foo');
}
});
}
setTimeout(function(){ console.log('b }, 50);
我可以完全排列输出吗?喜欢:foo --> bar
答案 0 :(得分:0)
您需要以async
或promise
的形式包装代码。
For Instance:
var sql = 'SELECT 1 AS re';
var count = 0;
async.whilst(
function() {
return count < 10;
},
function(done) {
count++;
connection.query(sql, function(err, rows) {
if(err)
connection.rollback(function(e) { done(); });
else {
console.log('foo');
done();
}
});
},
function(err) {
console.log('bar');
});
现在这将是顺序的。再说一遍,如果这不是你要问的。我建议请更新您的问题,以便我们更好地了解问题所在,或者至少您的意图是什么。