2

首先,我有一个结构如下的 monorepo:

repo-name/
    packages/
        backend/
        frontend/
    .vscode/

后端是一个 Azure 函数应用,其结构如下:

backend/
    functions/
        funcOne/
        funcTwo/
    scripts/
        start-debug.sh
    package.json

其次,对于backend's package.json,我有一个脚本:

  "debug": "npm run build && FUNCTION_APP_PORT=7071 ./scripts/start-debug.sh",

start-debug.sh脚本如下所示:

#!/bin/bash 
set -e
cd ./functions 
func extensions install 
func host start -p $FUNCTION_APP_PORT --debug VSCode

我正在尝试编写启动配置,以便可以在 VSCode 中调试我的函数。

根据我在那里发现的内容,我尝试了许多变体,但似乎没有任何效果。有没有人有什么建议?

这是我最近的尝试:

{
    "name": "Launch Backend Functions",
    "type": "node",
    "request": "launch",
    "address": "localhost",
    "protocol": "inspector",
    "runtimeExecutable": "${workspaceRoot}/node_modules/.bin/lerna",
    "runtimeArgs": [
        "exec",
        "--scope",
        "actual-name-of-backend-package",
        "--",
        "npm"
    ],
    "args": ["run", "debug"],
    "port": 1234
}
4

1 回答 1

2

好的,这是对我有用的 VSCode 中的启动配置:

{
  "type": "node",
  "request": "attach",
  "name": "Attach by Process ID",
  "protocol": "legacy",
  "processId": "${command:PickProcess}",
  "port": 9229
},

我的步骤是

1)去我的backend回购,并运行npm run debug运行我的start-debug.sh脚本。

2)在 VS Code 中,我附加nodejsWorkerazure-function-core-tools.

现在,我可以逐步完成我的功能。

于 2018-11-20T21:04:44.233 回答