Ogólne assets w Webpack
Sprawdźmy teraz ogólne assets.
Zróbmy tak, aby obrazy mniejsze niż 8kb
były konwertowane na base64, a obrazy większe
niż ten rozmiar były kopiowane do pliku:
export default {
entry: './src/index.js',
output: {
filename: 'bundle.js',
path: path.resolve('dist'),
},
module: {
rules: [
{
test: /\.png$/,
type: 'asset',
}
]
},
plugins: [
new HtmlWebpackPlugin(),
],
};
Można zmienić ograniczenie rozmiaru
obrazu. Dla przykładu, nałóżmy ograniczenie
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(),
],
};
Podłącz do punktu wejścia kilka obrazów o różnych rozmiarach. Sprawdź, jakiego typu transformacje są stosowane dla każdego obrazu.