【问题标题】:AngularJS watch - unable to set breakpoint in chrome using devtools workspacesAngularJS 手表 - 无法使用 devtools 工作区在 chrome 中设置断点
【发布时间】:2014-08-06 10:01:28
【问题描述】:

watch 服务是否创建原始功能的代理?

$scope.$watch('query', doSearch, true);

在哪里:

doSearch = function(query) {
  alert("breakpoint not working");
  // stuff
}

会显示警报,但如果我使用 chrome 调试器向代码添加断点,它根本不会中断。而非监视 javascript 函数中的其他断点正常工作。

更新: 当我不使用 chrome 开发工具的 workspaces 功能时,断点工作正常。

【问题讨论】:

  • 在他们的源代码中,看起来他们确实“包装”了传递的函数(var originalFn = watcher.fn;...originalFn.call(this, newVal, oldVal, scope);),但这不应该影响断点和调试...跨度>
  • @Ian 为什么不应该呢?我也在使用 chrome 工作区,但不认为这有什么不同。
  • 我的意思是,它仍在调用您传递给它的确切函数。如果它以某种方式构建了一个全新的函数并丢弃了您传递的内容,那将是一个不同的故事(我不确定他们如何或为什么会这样做)。嗯,我会尝试在普通的 Chrome 浏览器中调试它,如果我有这个问题,请告诉你
  • @Ian 好吧,是的。谢谢。
  • 只是一个想法,但您可能想尝试 Chrome Canary 看看是否会出现同样的行为。

标签: javascript angularjs google-chrome


【解决方案1】:

尝试使用debugger 命令..
对我来说,当常规断点在 chrome 上工作时它可以工作。

【讨论】:

    猜你喜欢
    • 2016-05-10
    • 2023-04-08
    • 2022-12-31
    • 2015-08-20
    • 2016-08-18
    • 1970-01-01
    • 2016-05-18
    • 2015-07-29
    • 2016-09-04
    相关资源
    最近更新 更多