如何在visual studio代码中调试async/await?

Jim*_*ang 12 javascript async-await visual-studio-code

我想在visual studio代码中调试包含async/await的js文件,但它提醒我vscode不支持它.我该怎么做才能使vscode支持async/await?

Nig*_*ist 21

和现在一样,2019年最新的支持async/await调试的VSCode,只是想分享解决方案,防止vscode通过“ async_hooks.js ”和“ inspector_async_hook.js ” “Step into”(按f11)进入async/await方法调试 nodejs 应用程序期间的文件。

如何 :

1) 在 vscode 中按 ctrl+p 并输入“>launch”,选择“open launch.json”

2)打开“launch.json”后,只需添加到配置部分:

"skipFiles": [
    "inspector_async_hook.js",
    "async_hooks.js"
  ]
Run Code Online (Sandbox Code Playgroud)

或更通用的版本:

"skipFiles": ["<node_internals>/**"]
Run Code Online (Sandbox Code Playgroud)

所以你最终的 json 应该看起来像这里:

{
  "version": "0.2.0",
  "configurations": [
    {
      "type": "node",
      "request": "launch",
      "name": "Launch Program",
      "program": "${workspaceFolder}\\index.js",
      "skipFiles": ["<node_internals>/**"]
    }
  ]
}
Run Code Online (Sandbox Code Playgroud)

在这些步骤之后,您可以在调试模式下按 F11 后看到真正的异步方法。


Gon*_*dez 5

目前您可以在Node.js 7中使用async/await或使用--harmony标志使用最新版本,您可以通过以下方式配置vscode调试器(launch.json)来运行和调试async/await Nodejs代码.

{
    "version": "0.2.0",
    "configurations": [
        {
            "type": "node",
            "request": "launch",
            "name": "Node 7 Async/Await",
            "program": "${workspaceRoot}/main.js",
            "cwd": "${workspaceRoot}",
            "runtimeArgs": [
                "--harmony",
                "--no-deprecation"
            ]
        },
        {
            "type": "node",
            "request": "attach",
            "name": "Attach to Process",
            "port": 5858
        }
    ]
}
Run Code Online (Sandbox Code Playgroud)

您必须通过启动脚本文件更改程序.