【问题标题】:Chrome debugger / breakpoint stops at wrong lineChrome调试器/断点停在错误的行
【发布时间】:2016-12-09 15:04:24
【问题描述】:

从 0.47 版开始,我在 chrome 开发人员工具中的断点在技术上会停在正确的行,但它会在源代码面板上以其他方式显示。 在实际断点和蓝色选定行之间总是会有 1 或 2 行移位。这使得调试变得非常困难,因为它从未正确显示,有人听说过解决方案吗?

if(true){
  this.anyfunction();
  debugger;
  var toto = 10;
  toto ++;
}

在这个例子中,源代码中第一个选择的蓝线是 toto++,而如果你要在 toto 上添加一个监视,toto 将是未定义的,这就是为什么我假设断点被正确命中,但是有一个显示问题.. .

【问题讨论】:

  • 所以你在debugger上设置断点,但DevTools将toto++高亮蓝色,当你在toto上设置监视表达式时,它是未定义的?
  • 你能显示这个截图吗?
  • 是的,正是这样,出于安全原因(我在工作)我无法上传任何内容,但我会在家尝试。

标签: google-chrome google-chrome-devtools breakpoints


【解决方案1】:

我遇到了同样的问题,在我更改 chrome 中的检查工具设置后它工作正常..

  1. 点击检查工具右上角的三点图标并选择设置。 (或者) 点击 F1。
  2. 取消选中 Preferences 中 Sources 下的 Enable JavaScript source maps 复选框。
  3. 现在一切正常...

【讨论】:

  • 嗨,我确实使用 javascript 源映射。不过,最新版本的 chrome 已经没有问题了。
【解决方案2】:

你的表情是否分布在多行?例如:

var x = 1 +
        2 +
        3 +
        4 +
        5;

这会导致不稳定的行为。当我在第 1 行设置断点然后运行脚本时,DevTools 在第 4 行暂停。

解决方法:在表达式上方的行设置断点。

【讨论】:

  • 不,它甚至不是扩展线,无论我将断点放在代码的哪个位置都会发生......
猜你喜欢
  • 2021-04-20
  • 2013-06-08
  • 2020-04-05
  • 2023-03-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-01
  • 2015-06-30
相关资源
最近更新 更多