0

我是 JS 开发的新手,刚刚开始介绍 JavaScript 课程。

我已经编辑了这个问题,因为我尝试了不同的方法

我正在尝试使用安装了适用于 Linux 版本 2 (WSL2) 的 Windows 子系统的Windows 10 机器。我有一个可用的 python 开发设置,但我完全无法获得一个可以运行的 JS 开发设置,我可以按 F5 并运行 Chrome 调试会话。

搜索了几个小时后,我回到了基础知识,我不想做的就是为基本index.html文件获取一个有效的调试会话。谁能发现我有什么问题?

目前,以下launch.json确实启动了 Chrome 浏览器,但我This site can't be reached在浏览器窗口中看到。

{
"version": "0.1.0",
"configurations": [
    {
        "name": "Launch localhost",
        "type": "chrome",
        "request": "launch",
        "url": "http://localhost/index.html",
        "webRoot": "${workspaceFolder}"
    }
]}

也试过这个配置:

{
"version": "0.1.0",
"configurations": [
    {
        "name": "Launch localhost",
        "type": "chrome",
        "request": "launch",
        "file": "${workspaceFolder}/index.html"
    }
]

}

我安装了 Chrome 调试器 - v4.12.12

在 vscode DEBUG CONSOLE 中,当我点击 run: 时,我看到了这个错误crbug/1173575, non-JS module files deprecated.

我也尝试过运行和不运行我的 Bitdefender 防火墙,以防万一出现故障,结果相同。

更新

  • 除了“Remote - WSL”之外,在 VSCode 中安装了“Remote Development”扩展。
  • Node.js 调试工作正常......但我真的希望 Chrome 或 FireFox 工作
  • 尝试将 IP 地址换成单词localhost……仍然没有。
  • 文件启动配置,见上文,新错误:Not allowed to load local resource: file:///__vscode-remote-uri__/home/USER/JS-dev/index.html
4

1 回答 1

1

解决方案是:

  1. 安装Live Server扩展。这会将其安装在WSL: UBUNTU - INSTALLEDVSCode 扩展下拉区域的部分下。
  2. 编辑 Live Server 扩展settings.json文件以设置chromeDebuggingAttachment为 true,如下所示: "liveServer.settings.ChromeDebuggingAttachment": true
  3. 如 Live Server 自述文件中所述,从状态栏中单击“GoLive”。这会将我的index.html文件放在浏览器选项卡中。
  4. 从菜单运行 Chrome 调试会话,Run --> Start Debugging或者F5它可以工作。

一些有用的注释:

  • settings.json的位置在这里:C:/Users/<MY-USER>/AppData/Roaming/Code/User/settings.json

  • 它适用于以下launch.json文件:

      {
      "version": "0.1.0",
      "configurations": [
          {
              "name": "Launch localhost",
              "type": "chrome",
              "request": "launch",
              "url": "http://localhost:5500/index.html",
              "webRoot": "${workspaceFolder}"
          }
      ]}
    
  • Live Server 扩展最后一次更新是在 2019 年,所以不是很好。我认为这使我的解决方案有点骇人听闻。

  • 考虑到我尝试过的所有选项,我对此不起作用的唯一解释是远程开发扩展目前声明 WSL2 支持是实验性的。

于 2021-05-25T13:12:38.420 回答