一、html-webpack-plugin
简化了HTML文件的创建,以便为你的webpack包提供服务。不用我们自己生成html文件,插件自动帮我们生成
配置
const HtmlWebpackPlugin = require('html-webpack-plugin');plugins: [new HtmlWebpackPlugin({template: './src/index.html', // 以该html文件为模板,生成文件filename: 'index.html' // 产生后的文件名})]
二、clean-webpack-plugin
配置
const {CleanWebpackPlugin} = require('clean-webpack-plugin');plugins: [new CleanWebpackPlugin()]
三、mini-css-extract-plugin
配置
const MiniCssExtractPlugin = require("mini-css-extract-plugin");rules: [{test: /\.css$/,// css-loader 用来解析处理css文件中的url路径// style-loader 可以把css文件变成style标签插入到header中// 多个loader是有顺序要求的,从右往左写,因为转换的时候是从右往左转换// loader: ['style-loader', 'css-loader']use: [//添加loader,用于生产模式,不能有 style-loader{loader:MiniCssExtractPlugin.loader,options:{publicPath:'../'}},"css-loader"]}]plugins: [new MiniCssExtractPlugin({filename: "css/[name].css",chunkFilename: "[id].css"})]
四、optimize-css-assets-webpack-plugin
压缩css代码(去除空格和注释)
const OptimizeCSSAssetsPlugin = require("optimize-css-assets-webpack-plugin");plugins: [new OptimizeCSSAssetsPlugin({})]
五、uglifyjs-webpack-plugin
压缩js代码
const uglify = require('uglifyjs-webpack-plugin');plugins: [new uglify()]
六、webpack-parallel-uglify-plugin
并行压缩js代码
const ParalleUglifyPlugin = require('webpack-parallel-uglify-plugin');plugins: [new ParalleUglifyPlugin({uglifyJs:{output: {beautify:false, // 最紧凑的输出comments:true, // 删除所有的注释},compress:{warnings: false, //在UglifyJs删除没有用到的代码时不输出警告drop_console:true, // 删除所有的 `console` 语句,可以兼容ie浏览器collapse_vars:true, // 内嵌定义了但是只用到一次的变量reduce_vars:true // 提取出出现多次但是没有定义成变量去引用的静态值}}})]
