10

根据 webpack 文档,我尝试将 UglifyJSPlugin 添加到 webpack 4 项目中,但我仍然在我的包中看到死代码甚至注释,这让我认为我的 uglify 插件配置没有被使用。

链接到项目

文档声明“为了利用 tree shaking,您必须...
- 使用 ES2015 模块语法(即导入和导出)。完成
- 在项目的 package.json 文件中添加“sideEffects”条目。完成
-包括一个支持删除死代码的压缩程序(例如 UglifyJSPlugin)。” 完毕

尽管如此,我的捆绑包中仍包含未使用/未导入的 leftpad 功能和注释。

所有的配置都可以在这里看到。根据我看到的结果,我怀疑这与我的 webpack 配置中的 uglify设置有关。

要重现,请提取repo并运行yarn build

4

1 回答 1

2

摇树仅在生产模式下启用

https://github.com/webpack/webpack/issues/6992#issuecomment-379665061

这种解释具有误导性,因为不仅需要 UglifyJsPlugin,还需要一堆插件才能使其按此处解释的方式工作。

我还没有尝试启用所有插件以查看它是否有效。我已经尝试过“--optimize-minimize”选项,但它不起作用。

于 2018-07-12T14:03:22.640 回答