标签:文件 常用 less 配置 loader html CSS js css
style-loader、css-loader、less-loader都是基础配置,常用配置指的是按需配置,需要使用的时候再进行的配置
目录结构:
安装依赖
npm install mini-css-extract-plugin -D
webpack.config.js文件
const {resolve}=require("path") const HtmlWebpackPlugin = require("html-webpack-plugin") const MiniCssExtractPlugin = require("mini-css-extract-plugin"); module.exports={ //入口文件 entry:"./src/index.js", //出口文件 output:{ //输出文件名 filename:"build.js", //输出路径 //__dirname表示当前文件夹的绝对路径 path:resolve(__dirname,"build") }, //配置相关的loader module:{ //配置规则,内部是json配置项,每一个json就代表一个loader rules:[ { //引导打包文件和编译的文件为css文件 test:/\.css$/, //内部执行哪些loader,loader的执行顺序是倒序的,后写的先执行 use:[ MiniCssExtractPlugin.loader, // css-loader是将样式的代码翻译为js的模式,内部是样式的字符串 'css-loader' ] }, { //引导打包文件和编译的文件为css文件 test:/\.less$/, //内部执行哪些loader,loader的执行顺序是倒序的,后写的先执行 use:[ // 识别css-laoder的js字符串为样式代码,添加到head标签 'style-loader', // css-loader是将样式的代码翻译为js的模式,内部是样式的字符串 'css-loader', // less-loader的作用是将less文件变为css文件 'less-loader' ] } ] }, plugins: [ // 配置html的文件 new HtmlWebpackPlugin({ // template表示是引入的模板文件地址 template: './src/index.html' }), new MiniCssExtractPlugin() ], //打包模式development表示开发,production表示生产 mode:"development" }
build文件夹内部就打包生成了三个文件
inde.html文件会自动引入这两个文件
用浏览器打开index.html文件
输出的css文件,也可以设置输出目录
new MiniCssExtractPlugin({ // 输出路径 filename: 'css/index.css' })
压缩css文件
需要再安装一个插件
npm install optimize-css-assets-webpack-plugin -D
const {resolve}=require("path") const HtmlWebpackPlugin = require("html-webpack-plugin") const MiniCssExtractPlugin = require("mini-css-extract-plugin"); const OptimizeCssAssetsWebpackPlugin = require("optimize-css-assets-webpack-plugin"); module.exports={ //入口文件 entry:"./src/index.js", //出口文件 output:{ //输出文件名 filename:"build.js", //输出路径 //__dirname表示当前文件夹的绝对路径 path:resolve(__dirname,"build") }, //配置相关的loader module:{ //配置规则,内部是json配置项,每一个json就代表一个loader rules:[ { //引导打包文件和编译的文件为css文件 test:/\.css$/, //内部执行哪些loader,loader的执行顺序是倒序的,后写的先执行 use:[ MiniCssExtractPlugin.loader, // css-loader是将样式的代码翻译为js的模式,内部是样式的字符串 'css-loader' ] }, { //引导打包文件和编译的文件为css文件 test:/\.less$/, //内部执行哪些loader,loader的执行顺序是倒序的,后写的先执行 use:[ // 识别css-laoder的js字符串为样式代码,添加到head标签 'style-loader', // css-loader是将样式的代码翻译为js的模式,内部是样式的字符串 'css-loader', // less-loader的作用是将less文件变为css文件 'less-loader' ] } ] }, plugins: [ // 配置html的文件 new HtmlWebpackPlugin({ // template表示是引入的模板文件地址 template: './src/index.html' }), new MiniCssExtractPlugin({ // 输出路径 filename: 'css/index.css' }), new OptimizeCssAssetsWebpackPlugin() ], //打包模式development表示开发,production表示生产 mode:"development" }
此时在进行wenpack打包,我们可以看到此时的css文件:
标签:文件,常用,less,配置,loader,html,CSS,js,css 来源: https://www.cnblogs.com/keyeking/p/15469009.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。