我正在尝试使用以下代码执行 redis 的几个异步方法
var redis = require("redis");
var client = redis.createClient();
var async = require("asyncjs");
async.list([
client.hincrby("traffic:" + siteId, 'x', 1),
client.hincrby("traffic:" + siteId, 'y', 1),
client.hincrby("traffic:" + siteId, 'z', 1)
]).call().end(function(err, result)
{
console.log(err); // returns error [TypeError: Object true has no method 'apply']
console.log(result); // undefined
if(err) return false;
return result;
});
所有方法执行成功
但我得到了错误[TypeError: Object true has no method 'apply']
该方法被执行并返回true,它可能将其解释为true,但我不明白为什么它必须使用该方法应用它?
我可以通过将函数(错误,结果)作为最后一个元素添加到 client.hincrby 来获得增量的结果。但是如何在最终函数的结果变量中获得所有结果?