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