希望有人可以帮助解决关于 node-redis 的(简单)异步问题。我正在尝试从 redis 数据库中的哈希加载一个集合,然后进一步使用该填充集合。这是代码片段:-
var redis_client = redis.createClient(REDIS_PORT, REDIS_URL);
redis_client.hgetall(target_hash,function(e,o){
Object.keys(o).forEach(function(target){
// get the "name" from the hash
redis_client.hget(o[target],"name",function(e,o){
if (e){
console.log("Error occurred getting key: " + e);
}
else {
redis_client.sadd("newset",o);
}
});
});
// the following line prints nothing - why ??
redis_client.smembers("newset",redis.print);
当我检查 redis 中“newset”的内容时,它按预期填充,但在运行时显示为空。我确定这是一个异步问题 - 非常感谢任何帮助!