我正在尝试使用 node-inspector 调试使用 babel-node 运行的 nodeJS 应用。
babel-node index.js --debug
节点检查器可以正常工作,但它会在已编译的es5中显示源映射,而不是es6
答案 0 :(得分:4)
它需要一个包装器,它将创建源代码的源映射而不是转换后的代码。
来自https://babeljs.io/docs/setup/#babel_node_debug
npm install -g babel-node-debug
babel-node-debug index.js
<强>更新强>
我没有使用babel-node
运行它,而是将其转换为es5 + sourcemaps,然后使用node
运行它。
通过这样做,node-inspector将在源开发工具中显示正确的代码。
我还没想出如何使用babel-node
答案 1 :(得分:3)
对于babel 6,我使用了require钩子。
按照这些说明进行babel注册。 https://babeljs.io/docs/setup/#babel_register
在app.js或应用程序的入口点添加
require('babel-register')({
sourceMaps: true
});
如果您还需要添加其他选项,请参阅 - https://babeljs.io/docs/usage/options/#options
您应该能够使用node-inspector&amp; chrome来调试你的应用程序
答案 2 :(得分:2)
根据Javascript之道,“代码在当下流动,所以知识只是一个提示,就像流的地图一样。”
最新版本的v8现在使用如下命令:
$ babel-node --inspect --debug-brk a.js
对于源地图,请尝试将其添加到a.js
:
import 'source-map-support/register';