Visual Studio Code中未经验证的断点

时间:2018-09-11 11:41:51

标签: visual-studio-code breakpoints

我正在尝试调试VS Code项目时突然出现(因为它在一天前运行良好),我的某些断点变得无法访问:

enter image description here

断点列表全部灰显,显示Breakpoint set but not yet bound信息。

我的package.json.vscode/launch.json处于同一级别,我的VS Code版本信息:

enter image description here

但是,此问题还有一些其他琐事:在某些文件上设置断点实际上是可行的。他们被正确击中。因此对我来说,文件的类型,位置,功能或加载时间之间没有关联,Chrome调试器无法处理某些文件...

我的VS Code运行配置如下:

  "configurations": [

    {
      "name": "Launch Chrome against localhost",
      "type": "chrome",
      "request": "launch",
      "url": "http://localhost:4210",
      "webRoot": "${workspaceFolder}",
      "sourceMaps": true
    },
    {
      "name": "ng serve",
      "type": "chrome",
      "request": "launch",
      "url": "http://localhost:4210/#",
      "webRoot": "${workspaceRoot}"
    },
  ]

我也尝试卸载/禁用/启用chrome调试器,并在禁用所有其他插件的情况下运行它。设置断点并重新运行调试器不会生效,也不会停用/重新激活所有断点。

1 个答案:

答案 0 :(得分:1)

好的,解决了一段时间之后。这都是由Angular路由机制引起的。如果通过component浏览了断点已本地化的组件,则断点将立即设置并可以命中。对于通过loadChildren导航的组件,直到加载实际页面之前,都不会验证断点。然后断点变为“可达”。

编辑

为使答案减少特定于角度的答案,最终的根本原因是未验证的断点是在尚未发送到浏览器的JavaScript代码部分上设置的(即未访问子页面,脚本的分区不是)AJAX-请求)