如何在 babel-node 调试器中获得正确的变量名?

How do you get correct variable names in babel-node debugger?

npm i babel-cli babel-preset-env
echo '{"presets": ["env"]}' > .babelrc
printf "import u from 'util';\ndebugger;\nconsole.log(u);\n" > foo.es
babel-node --inspect-brk foo.es

继续断点 F8 并检查 u。你得到一个 ReferenceError: u is not defined.

运行:

npm install --save-dev babel-plugin-transform-es2015-modules-commonjs-simple

然后,将其添加到您的 .babelrc:

{
  "presets": [
      "env"
  ],
  "plugins": [
    ["transform-es2015-modules-commonjs-simple", {
       "noMangle": true
    }]
  ]
}

使用 noMangle: true 原始变量名称保留在 sourcemaps 中。

然后运行:

babel-node --inspect foo.es

你的变量 u 在那里 :)