Получите миниатюрную версию в модуле ractive с помощью webpack

Я работаю с ractive и webpack в своем внешнем приложении. Размер пакета моего приложения очень велик (1,3M), поэтому я подумал, что вместо того, чтобы минимизировать модули узлов с помощью webpack, лучше взять уже минимизированную версию некоторых модулей? например, в случае ractive модуль ractive создает минифицированные версии в node_modules/ractive, когда вы устанавливаете его через npm install ractive, поэтому я хотел бы сказать webpack, чтобы он захватил этот файл, а не сжимал весь файл.

Размер ractive.js составляет

-rw-rw-r-- 1 vagrant vagrant 413K Apr 25 17:53 ractive.js

ractive.min.js - это

-rw-rw-r-- 1 vagrant vagrant 162K Apr 25 17:53 ractive.min.js

Есть ли способ сообщить об этом веб-пакету?

Может, вместо того, чтобы писать

var R = require('ractive')

лучше писать

var R = require('./node_modules/ractive/ractive.min.js')

Мне не нравится этот вариант, потому что он кажется слишком хакерским, но если нет возможности сделать это хорошо с помощью webpack, мне придется.


person alexserver    schedule 13.09.2015    source источник


Ответы (1)


Когда webpack связывает исходные файлы, он не минимизирует их по умолчанию. Вероятно, поэтому вы получаете большой файл пакета. Вы можете запустить webpack -p, чтобы получить уменьшенную версию файла пакета. Это приведет к размеру файла, подобному размеру пакета, который изначально использовал ractive-min в качестве источника.

Если вы все еще хотите работать с уменьшенной версией ractive в разработке, вы можете использовать NormalModuleReplacementPlugin. Вот пример:

webpack.config.js

var webpack = require('webpack');

module.exports = {
    // other configuration settings

    plugins: [
        new webpack.NormalModuleReplacementPlugin(/^ractive$/, 'ractive/ractive.min')
    ]
};
person katranci    schedule 13.09.2015