АКЦИЯ: бесплатные месячные курсы по созданию сайтов
на выбор: верстка, JavaScript, PHP, Python и фреймворки. Сегодня последний день для записи! Жми!
⊗tlWpAsCT 53 of 55 menu
Бесплатные курсы по Git. Начинаем, когда соберется 1000 желающих:) Жми для записи!

Общие ассеты в Webpack

Давайте теперь попробуем общие ассеты. Сделаем так, чтобы картинки менее 8kb превращались в base64, а картинки больше этого размера копировались в файл:

export default { entry: './src/index.js', output: { filename: 'bundle.js', path: path.resolve('dist'), }, module: { rules: [ { test: /\.png$/, type: 'asset', } ] }, plugins: [ new HtmlWebpackPlugin(), ], };

Можно изменить ограничение на размер картинки. Для примера, наложим ограничение в 4kb:

export default { entry: './src/index.js', output: { filename: 'bundle.js', path: path.resolve('dist'), }, module: { rules: [ { test: /\.png$/, type: 'asset', parser: { dataUrlCondition: { maxSize: 4 * 1024 // 4kb } } } ] }, plugins: [ new HtmlWebpackPlugin(), ], };

Подключите к точке входа несколько картинок разного размера. Проверьте, какой тип преобразований применяется для каждой картинки.

enru