如何将运行时断点添加到TypeScript编译的项目中?

时间:2017-03-23 22:31:08

标签: debugging typescript intellij-idea webstorm

问题: 在调试Typescript Node.js app时,如何在执行时启用断点?

上下文 我目前有一个服务器端应用程序通过nodevm运行。我的模块是使用TypeScript构建的。我目前正在使用WebStorm及其TypeScript转换器。由于TypeScript是一种转换语言,我知道最终输出是一个.js文件。

现在,只要在节点进程启动时设置断点,我的断点就能正常工作。来自其他语言,您可以在运行时遍历代码时设置断点。有可能这样做吗?

目标:启动流程 - 点击断点A - >添加断点B - >播放 - >执行在B停止。

当前:启动流程 - 点击断点A - >添加断点B - >播放 - >执行会忽略断点B,直到重新启动。

我对任何能够带来这种体验的解决方案更感兴趣,而不仅仅是WebStorm。

[名称已编辑] Current Debug Configuration

2 个答案:

答案 0 :(得分:0)

我目前对webstorm问题的解决方法是使用远程调试器。使用node --debug-brk=5858 server.js启动您的应用并添加“Node.js远程调试”配置:

enter image description here

这将暂停应用程序启动,直到您启动远程调试器侦听端口5858.我在终端窗口中启动服务器,翻转到Webstorm并启动调试器。这将允许您插入断点而无需重新启动服务器或调试器。

答案 1 :(得分:-1)

今天在VS Code中有效。

根据源地图的设置方式,可能会有一些轻量级配置,但TS debugging in VS Code上有很棒的文档。您还可以参考我为之前正在处理的VS Code预配置的node-typescript sample