视频里所说的css tree-shaking在实际实践中,虽然和视频的不一样,但是大体思想一致,老师帮忙看下为啥没有生效?

来源:3-16 由浅入深 webpack - Tree-shaking - CSS Tree-shaking

慕运维5828042

2018-02-23

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<div id="app"></div>
<div class="a">dsajdajk</div>
<script src="./dist/app.bundle.js"></script>
</body>
</html>
import './css/app.css'
import { a } from '../util';
a()
import {chunk} from 'lodash'

console.log(chunk(['a', 'b', 'c', 'd'], 3))
let Dom = document.getElementById('app')
let div = document.createElement('div');
div.className = "b";
Dom.appendChild(div)
.a{
font-size:16px;
}
.b{
font-size:18px;
}
.c{
font-size:20px;
}
.c1{
font-size:20px;
}
.c2{
font-size:20px;
}
.c3{
font-size:20px;
}
.c4{
font-size:20px;
}

配置文件

const webpack = require('webpack');
const CleanWepackPlugin = require('clean-webpack-plugin');
const ExtractTextWebpackPlugin = require('extract-text-webpack-plugin')
const PurifyCss = require('purifycss-webpack');
const glob = require('glob-all');
const path = require('path')
module.exports = {
entry: {
app: './src/app.js'
},
output: {
path: __dirname + '/dist',
filename: '[name].bundle.js'
},
module:{
rules: [
{
test: /\.js$/,
use: [{
loader: 'babel-loader',
options: {
presets: 'env',
plugins: ['lodash']
}
}]
},
{
test: /\.css$/,
use: ExtractTextWebpackPlugin.extract({
fallback: 'style-loader',
use: ['css-loader']
})
}
]
},
plugins: [
new ExtractTextWebpackPlugin({
filename: '[name].min.css'
}),
new PurifyCss({
paths: glob.sync([
path.join(__dirname,'./*.html'),
path.join(__dirname,'./src/*.js')
])
}),
new webpack.optimize.UglifyJsPlugin(),
new CleanWepackPlugin('./dist'),
]
}

http://img.mukewang.com/szimg/5a902b090001f6a509580553.jpg

写回答

1回答

qbaty

2018-02-24

你试试把 PurifyCss 放到 ExtractTextWebpackPlugin 前面先处理

0
1
慕运维5828042
也是不可以的,我试了下,所有的样式都还在
2018-02-25
共1条回复

四大维度解锁Webpack3.0前端工程化

前端开发标配,灵活掌握Webpack3.0的使用可以极大的提高前端开发的效率

1188 学习 · 403 问题

查看课程