Разница между UglifyjsWebpackPlugin и UglifyJsPlugin

Я немного смущен разницей между UglifyjsWebpackPlugin и UglifyJsPlugin. Документация Webpack 2 рассказывает о них обоих на отдельных страницах - 1. https://webpack.js.org/guides/production-build/2. https://webpack.js.org/plugins/uglifyjs-webpack-plugin/

Вторая ссылка также говорит о зависимости от git://github.com/mishoo/UglifyJS2#harmony для цели минификации ES6.

Какой из них я должен использовать в производстве (реагировать приложение).

1 ответ

  1. UglifyJsPlugin запекается в webpack2 и использует эту версию uglify-js который поставляется с веб-пакетом, который вы используете. Таким образом, вы не можете изменить его версию без изменения используемого вами веб-пакета (в текущей основной ветке webpack2 uglify-js является ^2.x.x).

  2. UglifyjsWebpackPlugin использует эту версию uglify-js это входит в ваш проект (так что вы можете установить любую версию, стабильную или нестабильную, гармоничную или нет).

Источники 1 и 2 очень близки.

Из документации webpack2:

Обратите внимание, что webpack содержит тот же плагин в webpack.optimize.UglifyJsPlugin. Это отдельная версия для тех, кто хочет контролировать версию UglifyJS.


Какой из них я должен использовать в производстве (реагировать приложение)?

В работе вы можете попробовать использовать baked в UglifyJsPlugin, если вы переносите ES6 на то, что этот плагин принимает.

Или есть также Babili - минификатор на основе babel, готовый к ES6+ ( бета).

Другие вопросы по тегам