在WebStorm中调试已编译的ES6 nodejs应用程序

nga*_*ull 17 debugging node.js webstorm source-maps ecmascript-6

我想调试从已babel编译的ES6文件运行的节点应用程序.我有一个src文件夹中的ES6源代码和文件夹中的babel ES5等效项build.

Project root
|
| build
| > ES5 Compiled files
|
| src
| > ES6 Source files
Run Code Online (Sandbox Code Playgroud)

我的目标:将断点直接放在我的ES6源代码中.

我已经生成了正确的源映射,我做了一个节点调试配置,运行ES5主文件,项目根目录设置为工作目录.我在ES5编译文件中设置断点时可以中断,它会自动显示我的ES6源.

但是我想直接在ES6源中放置断点.

这甚至可能吗?

-

> 2015-10-11编辑<

当我使用绝对值时,源映射现在可以很好地使用@ mockaroodev的配置sourceRoot!

然而,调试仍然被打破:踩到一条线有时会让我处于意想不到的地方.似乎当行require以某种方式暗示非内部(非本机)时,调试器将在所需内容的末尾中断.这非常烦人!

我在Linux上使用Webstorm 10.0.4并将babel和sourcemaps升级到最新版本.

有人也遇到过这个问题吗?

Dan*_*scu 6

从WebStorm 2016.2 EAP开始,您不需要任何源映射,甚至不需要文件监视器.只需将"节点"可执行文件配置为babel-node,您就可以调试内容,甚至是包含async/await的脚本.

ES2016的运行/调试配置