在vscode

时间:2017-10-10 13:49:05

标签: debugging visual-studio-code serverless-framework

在VSCode中调试基于无服务器的应用程序时,没有任何断点处于活动状态。

launch.json

{
  "configurations": [
    {
      "console": "integratedTerminal",
      "cwd": "${workspaceRoot}",
      "name": "Debug",
     "port": 5858,
      "request": "launch",
      "runtimeArgs": [
        "run-script",
        "vscode:debug"
      ],
      "runtimeExecutable": "npm",
      "type": "node"
    }
  ],
  "version": "0.2.0"
}

我的package.json

...
"scripts": {
  ...      
  "vscode:debug": "export SLS_DEBUG=* && node --inspect=5858 --debug-brk --nolazy ./node_modules/.bin/serverless invoke local -s local -f customerAlexa -p ./test/requests/FindAgent-First-GoodZip.json"
},
....

当我从菜单中选择Start Debugging时,所有红色断点都变为灰色,程序只是执行而不会在断点处停止。

DebugMenu

我在Mac上运行Node 6.11.2,Serverless 1.23.0。谢谢大家。

1 个答案:

答案 0 :(得分:0)

这是我的launch.json,它允许我使用断点。

{
  "type": "node",
  "request": "launch",
  "name": "Launch Program",
  "program": "${workspaceRoot}/node_modules/.bin/serverless",
  "args": [
    "offline",
    "start",
    "--skipCacheInvalidation"
  ],
  "env": {
    "NODE_ENV": "development"
  }
}

我使用无服务器离线在本地运行。我也在使用webpack和babel。 skipCacheInvalidation就是为了这个。

我希望这能指出你正确的方向。