我是VS Code(使用v1.7)和JavaScript的新手。我尝试使用Debugger for Chrome扩展程序(v2.2.2),但我无法获得断点功能(我可以设置它们,但会忽略它们,说明未经验证的断点)。
我知道我需要在端口9222上启动Chrome并进行调试,我通过以下方式实现:
chrome.exe --remote-debugging-port=9222
完成后我已经设置了一个非常简单的测试来证明问题。
我已按如下方式配置launch.json(在.vscode文件夹中)
{
"version": "0.2.0",
"configurations": [{
"name": "Launch index.html",
"type": "chrome",
"request": "launch",
"port": 9222,
"file": "${workspaceRoot}/index.html",
"webRoot": "${workspaceRoot}"
}
]
}
我创建了一个非常简单的index.html:
<!DOCTYPE html>
<html>
<script src="script.js"></script>
</html>
最后是script.js:
console.log("Started");
var x = 1; //breakpoint set here
console.log(x);
console.log("Complete");
在Code中按F5,然后在该过程中加载index.html运行script.js。如果没有设置断点,代码就会完成 - 但它不是我想要发生的。
完成后,我会看到图像1,它将红色断点图标替换为灰色断点图标,并将鼠标悬停在节目&#34;未验证断点&#34;。
上。我想我已经做了一些非常简单的错误,但我无法弄明白。有任何想法吗?感谢。
答案 0 :(得分:2)
您的设置似乎是正确的,但这是由于chrome dev工具中的错误 - Chrome needs to be refreshed before javascript files are shown in the sources tab
发生了什么事?
脚本执行后,V8会在chrome调试扩展程序启动开发工具之前收集它。这就是无法调试的原因
解决方案 - 在加载页面后重新加载页面。