我看到很多 Mongo (mongoose ORM) 查询是在 process.nextTick() 方法内部进行的。我知道 nextTick 将执行推迟到下一次迭代但是因为 these queries are asynchronous为什么他们仍然使用它?
示例:
process.nextTick(function() {
User.findOne({ 'local.email' : email }, function(err, user) {
...
});
});
最佳答案
TL;DR:它不是必需的,也不是特别有用。
有很多使用此设置的 Passport 教程:here , here , here .
我不知道使用 process.nextTick()
是怎么来的,但看起来这些教程可能是互相借用代码,或者是从一个共同的来源(我还没有能够找到)。
因为这些教程在 Google 上的排名很高,所以人们在寻找 Passport 示例代码时会找到它们并复制它。所以它在 SO 问题中也经常出现,也许强化了它在某种程度上是必需的想法。
关于javascript - 为什么在 mongoose 查询之前使用 process.nextTick()?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37353349/