rethinkdb的run函数中回调的用途是什么

时间:2016-03-30 03:31:18

标签: rethinkdb

我无法理解为什么在返回一组结果后需要回调(特别是任何函数都可以放入ReQL中)。有人可以举例说明回调是如何使用的吗?

1 个答案:

答案 0 :(得分:0)

我假设您正在谈论JavaScript驱动程序。

回调只是传递结果的普通节点式回调函数。您可以使用它代替承诺,例如:

r.expr(5).run(conn, function(err, result) {
  if (err) { console.log("Error: " + err); }
  else { console.log("Result: " + result); }
});

而不是promise-style版本

r.expr(5).run(conn).then(function(result) {
  console.log("Result: " + result);
}).catch(function(err) {
  console.log("Error: " + err);
});

我希望有所帮助。使用promises和回调通常没有意义。