Nodejs api 设计中的承诺

promise in Nodejs api design

我刚开始使用 Q 库来实现承诺。我在大多数 api 中都有这种常见模式。

userAction1(params)
.then(function(result){
    response.json(result);
},function(err){
    response.json(err);
});

userAction2(params)
.then(function(result){
    response.json(result);
},function(err){
    response.json(err);
});

我想将最后一部分移动到一些常用方法中并调用它而不是重复它。对该函数的签名应该是什么感到困惑。以前有人遇到过这个问题吗?

"last part",我假设你指的是错误处理函数。

您可以通过将方法作为参考传递来稍微缩短它。

如果你的函数中没有做任何其他事情,它看起来像这样。

userAction1(params)
    .then(response.json, response.json);