【问题标题】:How to debug ES6 NodeJS with WebStorm?如何使用 WebStorm 调试 ES6 NodeJS?
【发布时间】:2019-11-11 22:04:05
【问题描述】:

我正在尝试调试 nodejs ES6 服务器,即使我使用的是 babel,但我收到了以下警告:

(node:17736) [DEP0062] DeprecationWarning: `node --debug` and `node --debug-brk` are invalid. 
Please use `node --inspect` or `node --inspect-brk` instead.

Process finished with exit code 9

有人可以帮我解决这个问题吗?我看到了很多关于这个的问题,但它们看起来都很旧,并且不适用于最新版本的 nodejs。

这是我的配置:

【问题讨论】:

标签: node.js babeljs webstorm


【解决方案1】:

似乎babel-node 使用的Node.js 版本不接受--debug-brk 选项,并且Webstorm 无法检测到Node.js 版本是什么已使用(通常它会检查 Node.js 的版本选择为 Node 解释器: 并在运行时使用适当的选项)。

请选择 Node.js 可执行文件而不是那里的 babel-node 并在运行配置中使用 --require @babel/register 作为 Node 参数: 以获取即时编译的 ES6 代码-飞:

当然,你需要确保安装了相应的模块并相应地设置了.babelrc

package.json:

"dependencies": {
  "@babel/cli": "^7.2.3",
  "@babel/core": "^7.4.0",
  "@babel/preset-env": "^7.4.2",
  "@babel/register": "^7.4.0",
...
}

.babelrc:

{
  "presets": [
    [
      "@babel/preset-env"
    ]
  ]
}

【讨论】:

    【解决方案2】:

    什么对我有用:

    使用 nodemon 添加了运行此脚本的运行/调试 NPM 配置"dev": "nodemon"

    【讨论】:

      【解决方案3】:

      由于 Lena 的答案不适用于异步代码,您需要安装 @babel/polyfill 并在 webstorm 调试配置中要求它与 babel-register 一起使用

      --require @babel/register --require @babel/polyfill
      

      【讨论】:

        猜你喜欢
        • 2015-05-24
        • 1970-01-01
        • 2015-06-09
        • 2015-08-24
        • 1970-01-01
        • 2016-12-31
        • 2019-07-25
        • 2023-03-11
        • 2016-03-28
        相关资源
        最近更新 更多