Отладка машинописного приложения с консольного ввода во время выполнения - PullRequest
0 голосов
/ 02 мая 2020

Я пытаюсь изучить машинопись и ищу некоторую помощь в настройке поддержки отладчика в коде VS. Вот мое примерное приложение TS, которое является автономным приложением и просто печатает текст «Hello World» в консоли на данных, введенных в консоли. Как мне обеспечить консольный ввод после запуска приложения? Я помещаю точку останова в console.log в строке 6, выполнение останавливается при запуске. Но я хочу ввести консольный ввод во время выполнения и проверить файл console.log в строке 4.

Index.ts:

class Startup {
    public static main(): number {
        process.stdin.on("data",(buffer) => {
            console.log("Hello World);
        });
        console.log("Test breakpoint");
        return 0;
    }
}
Startup.main();

Launch. json {

"version": "0.2.0",
"configurations": [
    {
        "type": "node",
        "request": "launch",
        "name": "Launch Program",
        "skipFiles": [
            "<node_internals>/**"
        ],
        "preLaunchTask": "tsc: build - src/tsconfig.json",
        "program": "${workspaceFolder}/src/index.ts",
        "outFiles": ["${workspaceFolder}/dist/**/*.js"]
    }
]

}

1 Ответ

1 голос
/ 02 мая 2020

vscode Debug Console не поддерживает ввод, поэтому вам нужен другой терминал, который будет работать, встроенный прекрасно подойдет. Чтобы переместить выполнение отладки с Debug Console на Terminal, просто добавьте параметр в launch.json:

{
    ...
    "console": "integratedTerminal"
    ...
}

и снова запустите отладчик. Таким образом, вы сможете вводить запросы командной строки.

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