将css提取成单独文件,通过link引入,性能更好。
将css打包到js文件中,在js文件加载时,会创建一个style标签来生成样式。也就是说,css打包在js文件中,只有js文件全部加载完成时才会显示样式。对于网站来说,会出现闪屏现象,用户体验不佳。(可以通过调低网速感受一下)
安装:
npm install --save-dev mini-css-extract-plugin
引入和配置:
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
module.exports = {
plugins: [new MiniCssExtractPlugin()],
module: {
rules: [
{
test: /\.css$/i,
use: [MiniCssExtractPlugin.loader, "css-loader"],
},
],
},
};
将所有的style-loader改为MiniCssExtractPlugin.loader并且在插件中调用

npm run build后可以看到dist下多一个main.css,这就是抽取出来的css,里面有所有写的css文件

可以调用插件时指定输出路径
new MiniCssExtractPlugin({
filename:'static/css/main.css'
}),
这样是通过link引入样式,html会自动引入打包生成的资源。
本文介绍了将CSS从JS中分离出来以提高网站性能的方法,通过使用Webpack的MiniCssExtractPlugin插件,可以将CSS打包为单独的文件并link引入,避免闪屏现象,提升用户体验。配置插件并指定输出路径后,执行npm run build,即可在dist目录下看到生成的CSS文件。
149

被折叠的 条评论
为什么被折叠?



