2.1.6 css的编译与处理 -2
less ,sass等预处理语言的编译 --浏览器无法识别,需要编译成css才能被识别
less
1、less 2、less-loader
sass
1、sass-loader 2、node-sass
以less为例rules: [ { test:/\.less$/, use:[ //loader的执行顺序是从后往前的 { loader: ‘style-loader‘, options:{ singleton: true, transform: ‘./transform.js‘ } },{ loader: ‘css-loader‘, options: { module: { localIdentName: ‘[path][name]_[local]_[hash:4]‘ //类名会被编译,起个别名 path-路径 name-文件名 local-本来的类名 } } },{ loader: ‘less-loader‘ } ] } ]
提取css代码 --把css打包成一个单独的文件 extract-text-webpack-plugin
安装对应的插件 --> 改造成loader处的写法 --> 在plugin处添加
--> extract-text-webpack-plugin
--> 引入extract-text-webpack-plugin, 把 user 改成使用extract-text-webpack-plugin
--> 把 extract-text-webpack-plugin加 入 plugin 里
--> index.html 中使用 link 引入 <link rel="stylesheet" type="text/css" href="./src/dist/app.min.css">
var extractTextCss=require(‘extract-text-webpack-plugin‘); module.exports= { module:{ rules: [ { test:/\.less$/, use: extractTextCss.extract({ fallback: { //值为style-loader loader: ‘style-loader‘, options:{ // insertInfo: ‘#mydiv‘, singleton: true, transform: ‘./transform.js‘ } }, use: [ //执行style-loader之前要使用的loader { loader: ‘css-loader‘, options: { // module: true module: { localIdentName: ‘[path][name]_[local]_[hash:4]‘ //类名会被编译,起个别名 path-路径 name-文件名 local-本来的类名 } } },{ loader: ‘less-loader‘ } ] }) } ] }, plugins: [ new extractTextCss({ filename: ‘[name].min.css‘ }) ] }
指定公用的 browsersList
1、在项目中新建 .browserslistrc 文件,,,不太清楚
2、在package.json中指定 --- 更推荐
"browserslist":[ ">1%","last 2 versions" ] postcss 的插件 自动补充前缀和使用下一个css样式 安装: cnpm install postcss postcss-loader autoprefixer postcss-cssnext --save 终结版 var extractTextCss=require(‘extract-text-webpack-plugin‘); module.exports= { entry:{ app:"./app.js", }, output:{ path:__dirname+"/src/dist", filename:"./[name].bundle.js" }, resolve:{ alias: { a2:"./js/app2.js", } }, module:{ rules: [ { test:/\.less$/, use:extractTextCss.extract({ fallback:{ loader:‘style-loader‘, options:{ //insertInto:"#mydiv", singleton:true, //transform:"./transform.js" } }, use:[ { loader:‘css-loader‘, options:{ modules:{ localIdentName:‘[path][name]_[local]_[hash:4]‘ } } }, { loader:‘postcss-loader‘, options:{ ident:‘postcss‘, plugins:[ // require(‘autoprefixer‘)({ // ‘overrideBrowsersList‘: [ // ">1%","last 2 versions" // ] // }), require(‘autoprefixer‘)(), //配置公共的了,就不需要再设置 require(‘postcss-cssnext‘)() //使用下一个css ] } }, { loader:‘less-loader‘ } ] }) } ] }, plugins:[ new extractTextCss({ filename:‘[name].min.css‘ }) ] }
相关推荐
qiupu 2020-11-04
多读书读好书 2020-11-03
RedCode 2020-10-28
jiedinghui 2020-10-25
Ladyseven 2020-10-22
hellowzm 2020-10-12
zuncle 2020-09-28
Ladyseven 2020-09-11
jiedinghui 2020-09-07
xiaohuli 2020-09-02
葉無聞 2020-09-01
impress 2020-08-26
ThikHome 2020-08-24
nicepainkiller 2020-08-20
hellowzm 2020-08-18