node.js - Felsökning av en NestJS-app i Nx med en VScode-startkonfiguration


I VSCode försöker jag starta en NestJS-applikation med Nx i felsökningsläge. Jag använder för närvarande VSCode nightly js debugger-förlängningen. Jag är inte säker på vad som går fel här. Jag har också försökt lägga till typen "module" i package.json-filen och det fungerade inte heller. Jag var tvungen att lägga till TS_NODE_PROJECT-variabeln också eftersom jag utan den fick ett fel som sa att tsconfig.json-filen inte kunde hittas. Jag får för närvarande följande fel:

Users/user/Documents/angular_projects/nestwktest/apps/api/src/main.ts:5
import { __awaiter } from "tslib";
^^^^^^
node_modules/source-map-support/source-map-support.js:499

SyntaxError: Cannot use import statement outside a module
   at Module._compile (internal/modules/cjs/loader.js:891:18)
   at Module._compile 
(/Users/user/Documents/angular_projects/nestwktest/node_modules/ts- 
node/src/index.ts:1056:23)
at internal/modules/cjs/loader.js:991:10
at Object..ts (/Users/user/Documents/angular_projects/nestwktest/node_modules/ts-node/src/index.ts:1059:12)
at Module.load (internal/modules/cjs/loader.js:811:32)
at Function._load (internal/modules/cjs/loader.js:723:14)
at Function.runMain (internal/modules/cjs/loader.js:1043:10)
at internal/main/run_main_module.js:17:11
Process exited with code 1

här är min launch.json

"version": "0.2.0",
"configurations": [
    {
        "type": "pwa-node",
          "request": "launch",
          "name": "Debug Nest Framework",
          "args": [
              "${workspaceFolder}/apps/api/src/main.ts"
          ],
          "runtimeArgs": [
              "--nolazy",
              "-r",
              "ts-node/register",
              "-r",
              "tsconfig-paths/register"
          ],
          "sourceMaps": true,
          "cwd": "${workspaceRoot}/apps/api/",
          "internalConsoleOptions": "openOnSessionStart",
          "protocol": "inspector",
          "env": {
            "TS_NODE_PROJECT": "${workspaceFolder}/apps/api/tsconfig.json"
          },
          "skipFiles": ["<node_internals>/**", "node_modules/**"],
    },
    
    {
        "name": "Attach to NestJS API",
        "stopOnEntry": "flase",
        "port": 9229,
        "request": "attach",
        "type": "pwa-node"
    },
    {
        "name": "Launch Chrome against localhost",
        "request": "launch",
        "type": "pwa-chrome",
        "url": "http://localhost:4200",
        "webRoot": "${workspaceFolder}"
    }
]

}

Här är min filstruktur

Av det mesta jag har sett online, borde detta fungera.

Svar #1

Jag stod inför samma problem. Jag tog bort filen launch.json. Aktiverade funktionen auto attach --> smart och det fungerade bra. Om dina brytpunkter från kodfilen fortfarande inte är bundna efter att debuggningsverktyget har anslutits, försök att lägga till brytpunkterna från debugger -> loaded scripts --> src -> apps/abc/app.controller.ts

Relaterade artiklar