异步执行Redis命令

异步执行Redis命令,第1张

异步执行Redis命令

我想您使用的asyncjs模块是在以下位置记录的模块:https :
//github.com/fjakobs/async.js

在您的代码中:

  • list()是一个生成器。它允许数组由asyncjs进行迭代。该数组是值的数组。
  • call()是一个 调用 每个项目的映射器。因此,这些项必须是可调用的(即,它们必须是回调)。
  • end()是终止终点,当迭代结束时调用。作为参数,您只能获取序列的最后一个值(而不是整个序列)。

您收到“ [TypeError:Object true没有方法’apply’] ”错误,因为您建立的列表不是回调列表。它是值列表。

这是一些应该执行您想要的代码:

var redis = require("redis");var client = redis.createClient();var async = require("asyncjs");function main() {  var siteId = 1;  async    .list(['x','y','z'])    .map( function (item,next) {      client.hincrby('traffic:' + siteId, item, 1, function (err,res) {        next(err,res)      })    })    .toArray( function(err,res) {      console.log(err);       console.log(res);     });}main()

请注意,这里我们使用map()代替call(),并使用toArray()代替end()。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4905222.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-12
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存