javascript - 运行调试器时回调未运行;

标签 javascript node.js javascript-debugger

编辑:这个问题最初是关于数据库问题,但事实证明并非如此。 @tymeJV 在周五诊断问题时非常有帮助,但在周一早上,很明显原因与数据库无关。

我正在更新问题(而不是删除它)并自己添加答案。

一开始可能存在某种问题,但最终是我的调试本身破坏了事情。我的代码是:

collections.somecollection.find({name:'somename'}).toArray(function(err, docs) {
  log('>>>', err,docs)          
})

debugger;

我想知道为什么回调从未触发。

最佳答案

问题在于调查本身:调试器在子作用域可以运行其回调之前暂停执行。

例如:

collections.somecollection.find({name:'somename'}).toArray(function(err, docs) {
  log('>>>', err,docs)          
  debugger;
})

显示回调正在运行。

一些错误在稍微休息后就会变得明显。希望这对处于类似位置的其他人有所帮助。

关于javascript - 运行调试器时回调未运行;,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19322352/

相关文章:

javascript - Jquery datepicker 输入普通文本和日期

javascript - 查找对象数组中的缺失值

javascript - CKEditor 4 如何在没有用户交互的情况下添加表格(即没有对话框)

javascript - Electron 安装程序完整性检查失败

node.js - mongodb中只查询整数

javascript - 如何从javascript获取Bootstrap 3动态下拉模式对话框中的选定项目

node.js - 尝试使用 Node 模块在 Neo4j 数据库的 Node 中添加唯一的 slug 时出现错误?

javascript - 如何调试ApolloServer的上下文函数?

Android/iPhone 上的 JavaScript 调试

google-chrome - 我的 PhantomJS 远程调试尝试有什么问题?