2

我正在尝试提高使用大量猫鼬的大型 nodejs 应用程序的可读性。问题是,有很多相关的查询,回调会失控。

处理这个问题的做法是什么?

4

1 回答 1

2

您的问题有三种常见的解决方案。

第一个是async.js库。

第二个是使用 Promises。在 node.js 中有不止一种 Promise 的实现。我知道三种实现:

第三个是使用Fibers。Fiber Promise库可以为您完成所有棘手的工作。

以前有很多类似的问题。例如,检查这个

所有这些库都做同样的事情——它们使 node.js 异步代码漂亮且可读。因此,只需选择一个对您来说看起来更简单的。

至于我,我更喜欢async.jslib。

更新: mongoose.js有自己的内置承诺 -承诺。您可以将其作为mongoose.promise. 但是,每当您exec()在查询中调用函数时,mongoose它都会向您返回一个承诺。除了 之外,我从未真正使用过mongoose.js承诺REPL,但你可以试一试。

于 2013-05-26T22:09:36.293 回答