我的目标是插入从redis哈希中获取的值。我正在使用redis包作为节点js。
我的代码如下:
getFromHash(ids) {
const resultArray = [];
ids.forEach((id) => {
common.redisMaster.hget('mykey', id, (err, res) => {
resultArray.push(res);
});
});
console.log(resultArray);
},
在函数末尾记录的数组为空,res不为空。我该怎么做才能填满这个阵列?
答案 0 :(得分:1)
您需要使用一些控制流,async库或Promises(as described in reds docs)
当结果从redis调用返回时,将console.log
置于回调中。然后你会看到更多的打印输出。也可以使用.forEach
之一的控制流模式,因为它当前是同步的。