Node.js事件驱动范例=凌乱的代码?

时间:2013-10-27 10:46:05

标签: node.js redis

我来自PHP背景,现在我正在尝试习惯Node.js的事件驱动范例。但是,我的代码很快变得混乱。下面我将程序代码与实际的Node.js Redis代码进行比较。我这样做了吗?

PROCEDURAL(pseude code)

if(!client.get("user:name:koen")) {
    client.set("user:name:koen", "user:id:" + client.incr("count:users"));
}

EVENT DRIVEN(实际代码)

client.get("user:name:koen", function(err, res) {
  if(!res){
    client.incr("count:users", function(err, count){ 
      client.set("user:name:koen", "user:id:" + count, function (err, res) {
        callback(err, res);
      });
    }); 
  }
});

1 个答案:

答案 0 :(得分:1)

问题中提到的回调地狱在这里得到了很好的解释,以及如何编写代码以避免它:

http://callbackhell.com/