时间:2021-05-26
本文介绍了webpack处理 css\less\sass 样式的方法,分享给大家,具体如下:
(一)处理普通的.css 文件,需要安装 css-loader,style-loader
.less 文件,需要安装 less-loader
.sass 文件,需安装 less-loader
npm install --save-dev css-loadernpm install --save-dev css-loadernpm install less-loader --save-dev(二)在项目中,我们会遇到 不同浏览器,前缀不同。比如 display: flex ,在IE以及谷歌下前缀是不同的,
这时候,我们需要 postcss 这样的插件
npm install postcss-loader --save-devnpm install autoprefixer --save-dev安装好相关loader后,我们需要在webpack.config.js 中 加入相关配置代码,如下
var htmlWebpackPlugin = require('html-webpack-plugin');var path = require('path');console.log(__dirname);module.exports = { entry: './src/app.js', output: { path: './dist', filename: 'js/[name]-bound.js'//生成后的文件名 为 a-2ea5b2e9b258a8bbba73.js,main-2ea5b2e9b258a8bbba73.js }, module: { loaders: [ { test: /\.css$/, //正则表达式,匹配.css文件 loader: 'style!css?importLoaders=1!postcss' //处理顺序 从右到左 // ?importLoaders=1 表示 引入嵌入的 css文件也会按照postcss这样自动添加前缀 }, { test: /\.less$/, loader: 'style!css!postcss!less' } ], rules: [{ test: /\.(css|scss|less)$/, loader:"style-loader!css-loader?importLoaders=1!postcss-loader" //由于webpack2.X 版本对post-css书写方式的改变 //需要新添加 postcss.config.js }] }, plugins: [ new htmlWebpackPlugin({ filename: 'index.html', //通过模板生成的文件名 template: 'index.html',//模板路径 inject: 'body' //是否自动在模板文件添加 自动生成的js文件链接 }) ]};postcss.config.js 代码如下
module.exports = { plugins: [ require('autoprefixer')({ browsers: 'last 5 version' //前五种浏览器版本 }) ]};import layer from './components/layer/layer.js';import './css/common.css';const App = function () { console.log(layer);}new App();layer.js
import './layer.less';function layer(){ return{ name:'layer', tpl:'tpl' };}export default layer;//layer.less.layer{ width:600px; height: 200px; border: 1px solid yellow;}//common.css@import "flex.css";html{ background-color: red;}ul,li{ padding:0; margin:0; list-style:none;}.styleFlex { display: flex;}//flex.css.flexFlex { display: flex;}使用webpack 编译后,可以查看,相关css以及被编译在index.html,前缀css 自动完成。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
什么是webpack?webpack是近期最火的一款模块加载器兼打包工具,它能把各种资源,例如JS(含JSX)、coffee、样式(含less/sass)、图片
一概述随着sass/less等css预处理器的出现,编写css变的越来越有乐趣。所以现在越来越多的人在项目中喜欢使用scss或者less。(我自己就是一个)。由
你可以在创建项目的时候选择预处理器(Sass/Less/Stylus)。如果当时没有选好,内置的webpack仍然会被预配置为可以完成所有的处理。你也可以手动安
sass或者less都提供变量设置,在需求切换主题的项目中使用less或者sass变量,只要修改变量值,编译后所有用到该变量的样式都会被修改为你想要的效果,但是
webpack管理的项目,我们希望用sass定义样式,为了正常编译,需要做如下配置。这里不讲webpack的入门,入门的文章,我推荐这篇《webpack入门》。