webpack笔记(3)对css进行操做

1.打包CSS文件css

npm安装:html

npm install --save-dev style-loader css-loader

webpack.config.js下配置node

module.exports = {
    module:{
        rules :[
            {
                test : /\.css$/,
                use:['style-loader','css-loader']
            } 
        ] 
    }
}

在入口文件引入css文件进行测试webpack

import css from './css/xxx.css';

 

 

2.对css进行抽离web

npm安装npm

npm install --save-dev extract-text-webpack-plugin

webpack.config.js下配置sass

//对css进行抽离
const extractTextWebpackPlugin = require('extract-text-webpack-plugin');

module.exports = {
    module:{
        rules :[
            {
                test : /\.css$/,
                use:extractTextWebpackPlugin.extract({
                    fallback: "style-loader",
                    use:[
                        'css-loader'
                    ]
                })
            } 
        ]  
    }
    ,plugins:[
        new extractTextWebpackPlugin('./css/[name].css')    //将css抽离至出口文件目录:css/[name].css
    ]
}

 

 

 

3.自动添加后缀less

npm安装post

npm install --save-dev postcss-loader autoprefixer

根目录下建立postcss.config.js,并配置测试

module.exports = {
    plugins: [
        require('autoprefixer')
    ]
}

webpack.config.js下配置

//对css进行抽离
const extractTextWebpackPlugin = require('extract-text-webpack-plugin');

module.exports = {
    module:{
        rules :[
            {
                test : /\.css$/,
                use:extractTextWebpackPlugin.extract({
                    fallback: "style-loader",
                    use:[
                        'css-loader',
                        'postcss-loader'
                    ]
                })
            } 
        ]  
    }
    ,plugins:[
        new extractTextWebpackPlugin('./css/[name].css')    //将css抽离至出口文件目录:css/[name].css
    ]
}

 

 

4.消除未使用的css

注:使用这个插件必须配合extract-text-webpack-plugin插件

npm安装

npm install --save-dev purifycss-webpack purify-css

webpack.config.js下配置

const glob = require('glob');    //同步检查html模板
const purfyCssPlugin = require('purifycss-webpack');

module.exports = {
    plugins:[
        new purfyCssPlugin({
             paths:glob.sync(path.join(__dirname,'src/*.html'))
        })
        
    ],
}

 

5.打包和分离LESS

npm安装

//安装Less的服务
npm install --save-dev less

//安装Less-loader用来打包使用
npm install --save-dev less-loader

编写一个less文件:style.less

@body-color :#000;
body{
    background-color:@body-color;
}

引入到入口文件entery.js中

import less from './css/style.less'

webpack.config.js下配置

//对css进行抽离
const extractTextWebpackPlugin = require('extract-text-webpack-plugin');
module.exports
= { module:{ rules :[ { test: /\.less$/, use: extractTextPlugin.extract({ fallback: "style-loader", use: [{ loader: "css-loader" }, { loader: "less-loader" }] }) } ] } ,plugins:[ new extractTextWebpackPlugin('./css/[name].css') //将css抽离至出口文件目录:css/[name].css ] }

 

 

 

6.打包和分离SCSS

npm安装

//sass-loader依赖于node-sass,要先安装node-sass
npm install --save-dev node-sass

//安装Less的服务
npm install --save-dev sass-loader

编写一个scss文件:style.scss

$body-color :#000;
body{
    background-color:$body-color;
}

引入到入口文件entery.js中

import scss from './css/style.scss'

webpack.config.js下配置

//对css进行抽离
const extractTextWebpackPlugin = require('extract-text-webpack-plugin');

module.exports = {
    module:{
        rules :[
            {
                test: /\.less$/,
                use: extractTextPlugin.extract({
                    fallback: "style-loader",
                    use: [{
                        loader: "css-loader"
                    }, {
                        loader: "sass-loader"
                    }]
                })
            }
        ]
    }
    ,plugins:[
        new extractTextWebpackPlugin('./css/[name].css')    //将css抽离至出口文件目录:css/[name].css
    ]
}
相关文章
相关标签/搜索