Babel-standalone 存在于生产包中

Babel-standalone exist in production bundle

在生产模式构建之后,我的包中有一个 babel-standalone 模块。但是我从来没有手动安装过这个babel-standalonepackage.json 中也不存在。但是我在这个项目中安装了babel-polyfillbabel-standalone是否带有babel-polyfill?我怎样才能从捆绑包中删除这个模块,以便减少生产捆绑包的大小?

来自 webpack-bundle-analyzer 的屏幕截图如下:

babel-polyfill 不依赖于 babel-standalone。还有其他东西正在导入它。您可以 运行 npm ls babel-standaloneyarn why babel-standalone 查看安装的原因。

在弄清楚 为什么 babel-standalone 包含在你的包中之后,如果你确定你和你的依赖项都不需要它(它用于编译 JS 代码-the-fly 在浏览器中而不是在构建时),您可以使用 Webpack 的 null-loader:

删除它
  rules: [
    {
      // Adjust this path to match the path of the imported babel-standalone file
      test: path.resolve(__dirname, 'node_modules/babel-standalone/babel.js'),
      use: 'null-loader',
    },
  ]