2016-11-19 89 views
0

我是VS Code(使用v1.7)和JavaScript的新手。我试图使用调试器为Chrome扩展(v2.2.2),但我无法获得断点功能(我可以设置它们,但它们被忽略,说明未经验证的断点)。VS代码断点无法触发使用Chrome的调试器:

我明白,我需要在端口9222的调试,我实现通过运行Chrome浏览器:

chrome.exe --remote-debugging-port=9222 

做完,我已经建立了一个非常简单的测试来说明问题。

为(在.vscode文件夹)

{ 
    "version": "0.2.0", 
    "configurations": [{ 
      "name": "Launch index.html", 
      "type": "chrome", 
      "request": "launch", 
      "port": 9222, 
      "file": "${workspaceRoot}/index.html", 
      "webRoot": "${workspaceRoot}" 
     } 
    ] 
} 

我创建了如下我已经配置了launch.json一个非常简单的index.html为:

<!DOCTYPE html> 
<html> 
<script src="script.js"></script> 
</html> 

终于脚本.js是:

console.log("Started"); 
var x = 1; //breakpoint set here 
console.log(x); 
console.log("Complete"); 

在代码中按F5,然后加载index.html在该进程中运行script.js。如果没有设置断点,代码就会如预期般完成 - 但这不是我想要发生的事情。

完成后,我看到图像1,它将灰色的红色断点图标替换为“未验证的断点”。

我想我已经做了一些非常简单的错误,但我无法弄清楚。有任何想法吗?谢谢。

回答

2

看起来你的设置是正确的,但这是由于铬开发工具中的错误 - Chrome needs to be refreshed before javascript files are shown in the sources tab
发生了什么?
脚本执行后,V8在chrome调试扩展启动开发工具之前收集它。这就是为什么它不能被调试。
解决方案 - 在加载页面后重新加载页面。

+1

这是chrome开发工具@Marcs中的一个错误。如果您从上面启动index.html文件,然后打开开发工具,则无法在来源选项卡中找到它。 –

+0

...您将无法在来源标签中找到脚本...出于某种原因,我无法编辑或删除我上面的​​评论。 –

+0

你是对的,内部调试器和Chrome Canary(测试版分支)也是如此。 – Marcs

相关问题