在Webpack 4中在Uglify之后运行optimize-js

时间:2018-08-08 21:23:55

标签: webpack webpack-4 webpack-plugin

使用Webpack 4,如何在Webpack运行Uglify之后运行optimize-js

似乎在Webpack的早期版本中,您将使用optimize-js-plugin之类的插件。由于Webpack在缩小代码之前似乎已应用插件,因此我无法使用它,因此optimize-js转换在Uglify缩小时会丢失。

我尝试在Webpack配置中将optimization.minimizer设置为[],这禁用了内置的缩小功能,但是当我在插件中添加UglifyjsWebpackPlugin时,似乎没有做任何东西,我都有不计其数的来源。

有想法吗?

我的附加要求是,我需要通过所有转换来保留源映射,以便可以将后优化,后丑化的源映射回原始的TypeScript源(这样我就可以将崩溃崩溃堆栈转换成有意义的东西)

我的下一个方法是编写一个脚本,该脚本通过Node API调用optimize-js,然后使用source-map-merger(或类似名称)保存源地图。不利的一面是,这样的脚本将在Webpack外部运行,而我必须以某种方式标识所有webpack的输出。相当简单,但并不理想。

1 个答案:

答案 0 :(得分:1)

您是否已尝试将两个插件定义为最小化插件,并按希望的顺序使用它们:

optimization.minimizer: [
    new UglifyJsPlugin({...}),
    new OptimizeJsPlugin({...})
]