繁体   English   中英

Node js 调试在 Visual Studio 代码中不起作用(2020 年)

[英]Node js debugging not working in Visual Studio code (year 2020)

我已经解决了类似的问题,但没有一个答案有帮助,可能是因为最新的 VS Code 中的配置发生了变化,或者它们不相关。

尝试启动时出现此错误:

Exception has occurred: ReferenceError
ReferenceError: closeDescriptionPopup is not defined
    at HTMLParagraphElement.eval (eval at E (chrome-error://chromewebdata/:14:208), <anonymous>:3:21)
    at w (chrome-error://chromewebdata/:4622:845)
    at L.b (chrome-error://chromewebdata/:4628:231)
    at L.e (chrome-error://chromewebdata/:4627:393)
    at window.jstProcess (chrome-error://chromewebdata/:4630:800)
    at chrome-error://chromewebdata/:4632:56

我的launch.json看起来像这样。 请注意,由于各种试验和错误,这已经变成了这样:

   {
    "configurations": [
        {
            "name": "Launch Chrome",
            "request": "launch",
            "type": "pwa-chrome",
            "url": "http://localhost:8080",
            "webRoot": "${workspaceFolder}",
            
        },
        {
            "name": "Attach by Process ID",
            "processId": "${command:PickProcess}",
            "request": "attach",
            "skipFiles": [
                "<node_internals>/**"
            ],
            "type": "pwa-node"
        },
    {
        "name": "Attach to Chrome",
        "port": 9222,
        "request": "attach",
        "type": "pwa-chrome",
        "webRoot": "${workspaceFolder}",
    }
    ]
}

我也尝试过各种组合:

 node --inspect-brk  --inspect app.js

有时它会给出一条消息,即调试器正在ws://somehexadisgits处运行,但断点没有命中。

PS这是我的vs代码版本:

 Version: 1.46.1 (user setup)
Commit: cd9ea6488829f560dc949a8b2fb789f3cdc05f5d
Date: 2020-06-17T21:13:20.174Z
Electron: 7.3.1
Chrome: 78.0.3904.130
Node.js: 12.8.1
V8: 7.8.279.23-electron.0
OS: Windows_NT x64 10.0.18363

经过几个小时的挫折,这就是我解决的方法。

  1. 删除launch.json中的所有内容,使其完全空白,以便按钮Run and Debug像这样可见。

(之前的下拉菜单显示了在启动 json 中添加的配置列表) 在此处输入图像描述

  1. 点击按钮Run and Debug和 select 任何环境。 我选择了(铬)。 现在在终端运行npm start 注意底部终端上的下拉菜单。 它会选择JavaScript Debug Terminal 在此处输入图像描述
  1. 将断点放在任何地方,点击 API(通过 postman 或浏览器获取请求) ,并在它击中断点时注意到你内心的快乐

PS 稍后当您不想在调试时每次都运行应用程序时,您可以 select 终端中的另一个选项。 例如select 默认 shell/powershell ,现在当您运行npm start时,它将在正常node环境中启动,并且将在调试环境中正常运行而无需附加自身。 因此,您可以通过从 VS 终端的下拉列表中选择这些选项中的任何一个,在选择应用程序在调试环境中运行或不使用它之间进行切换。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM