VSCode Debugger & Typescript: пошаговый переход / переход к файлу JS - PullRequest
3 голосов
/ 28 марта 2019

Я новичок в VSCode и использую его для отладки кода node.js (Typescript).Что-то, на что я обращаю внимание: если мой код останавливается в точке останова, а затем я использую опцию «Step Over» или «Step Into», код переходит в файл Javascript после компиляции, а не в соответствующий файл Typescript.

Знаете ли вы, как заставить отладчик переходить только к файлам Typescript в результате использования "Step into" / "Step over"?

Мой файл settings.json выглядит следующим образом:

{
            "type": "node2",
            "request": "launch",
            "name": "Launch TS Program",
            "program": "${workspaceFolder}\\app.ts",
            "preLaunchTask": "tsc: build - tsconfig.json",
            "outFiles": [
                "${workspaceFolder}\\**\\*.js"
            ],
            "smartStep": true,
            "outputCapture": "std",
            "console": "internalConsole",
        },

Ответы [ 2 ]

1 голос
/ 28 марта 2019

Попробуйте установить smartStep в true в файле конфигурации запуска (launch.json).

Более подробную информацию об этой опции вы можете найти в документации здесь .

С атрибутом smartStep, установленным на true в конфигурации запуска, VS Код автоматически пропускает «неинтересный код» при переходе через код в отладчике. «Неинтересный код» - это код, который генерируется процессом прозрачности, но не покрывается исходной картой поэтому он не отображается обратно на исходный источник.

0 голосов
/ 08 мая 2019

У меня была такая же проблема. Я установил следующий параметр в моем tsconfig.json, а затем удалил каталог, указанный в outDir в tsconfig.json.

{
  ...
 "inlineSources": true,                 /* Emit the source alongside the sourcemaps within a single file; requires '--inlineSourceMap' or '--sourceMap' to be set. */
  ...
}

Затем, когда проект был перестроен при следующей отладке, пошаговые операции, казалось, работали нормально.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...