我在处理我已经存储在Redis中的队列时遇到了麻烦。
Redis中的队列基本上是一个简单的ID数组,我想逐个逐步介绍。
我目前的代码:
async.forEach(data, function(n, done) {
redisClient.hgetall("visitor:" + n, function(err, visitor) {
if (visitor != null) {
agentOnlineCheck(visitor['userID'], function(online) {
if (online == true) {
console.log("We are done with this item, move on to the next");
} else {
console.log("We are done with this item, move on to the next");
}
});
} else {
console.log("We are done with this item, move on to the next");
}
});
}, function() {
console.log("I want this to fire when all items in data are finished");
});
我使用async
库,var data
上方代表一个数组,如:
['232323', '232423', '23232']
我想循环遍历数组,但一次只能循环一个ID。并且不会转到下一个ID,直到前一个ID运行所有回调。
这有可能吗?
答案 0 :(得分:1)
您可以使用async.eachSeries
代替async.forEach
。