Общие ассеты в 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(),
],
};
Подключите к точке входа несколько картинок разного размера. Проверьте, какой тип преобразований применяется для каждой картинки.