Assets CSS bundluose su Webpack
Dabar padarykime taip, kad
keliai į .png failus būtų pakeičiami
CSS failuose surinkimo metu:
export default {
entry: './src/index.js',
output: {
filename: 'bundle.js',
path: path.resolve('dist')
},
module: {
rules: [
{
test: /\.png$/,
type: 'asset/resource'
},
{
test: /\.css$/i,
use: [MiniCssExtractPlugin.loader, 'css-loader'],
},
]
},
plugins: [
new MiniCssExtractPlugin({
filename: 'bundle.[contenthash].css'
}),
new HtmlWebpackPlugin(),
],
};
Patikrinkime, kaip tai veikia. Prijunkime prie įėjimo taško paveikslėlį ir stilių failą:
import './images/img.png';
import './styles.css';
Tegul stilių faile naudojame kelią į paveikslėlį:
body {
background: url('images/img.png');
}
Po surinkimo CSS bundle kelią į paveikslėlį bus pakeistas nauju:
body {
background: url('teisingas kelias nuo šaknies');
}
Nustatykite CSS faile fono paveikslėlį.
Prijunkite paveikslėlį prie įėjimo taško.
Atlikite surinkimą ir pažiūrėkite, į kurį failą bus nukopijuotas paveikslėlis ir kaip atrodys naujas kelias CSS bundle.