webpack-clean-plugin webpack-css-plugin 定义全局参数 webpack-压缩css代码

1、webpack-clean-plugin

(1)什么是clean-webpack-plugin

webpack-clean-plugin会在打包之前将我们指定的文件夹清空,然后再存放新打包的内容, 避免新老混淆问题。

(2)clean-webpack-plugin使用

https://github.com/johnagan/clean-webpack-plugin

安装clean-webpack-plugin:

npm install --save-dev clean-webpack-plugin

配置clean-webpack-plugin:

const { CleanWebpackPlugin } = require('clean-webpack-plugin');
plugins: [new CleanWebpackPlugin()]

2、webpack-css-plugin

(1)什么是mini-css-extract-plugin

mini-css-extract-plugin是一个专门用于将打包的CSS内容提取到单独文件的插件,前面我们通过style-loader打包的CSS都是直接插入到head中的。

(2)mini-css-extract-plugin使用

https://webpack.js.org/plugins/mini-css-extract-plugin/

安装:

npm install --save-dev mini-css-extract-plugin

配置:

const MiniCssExtractPlugin = require('mini-css-extract-plugin');

// 将css提取到单独文件

new MiniCssExtractPlugin({
    filename: './css/[name].css',
}),

替换style-loader:

{
     loader: MiniCssExtractPlugin.loader,
},

注意点: 如果相关文件资源无法显示, 需要根据打包后的结构手动设置公开路径

options: {
    publicPath: "xxx"
}

3、定义全局参数

new webpack.DefinePlugin({
      BASE_URL: JSON.stringify('/mock'),
}),

4、webpack-压缩css代码

(1)mini-css-extract-plugin压缩css

https://www.npmjs.com/package/mini-css-extract-plugin

(2)安装JS代码压缩插件

npm install --save-dev terser-webpack-plugin

(3)安装CSS代码压缩插件

npm install --save-dev optimize-css-assets-webpack-plugin

(4)导入插件

const TerserJSPlugin = require('terser-webpack-plugin');
const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin');

(5)配置webpack优化项

optimization: {
   minimizer: [new TerserJSPlugin({}), new OptimizeCSSAssetsPlugin({})],
Or:
minimizer: [
      new UglifyJsPlugin({
        parallel: true,
        sourceMap: false,
        uglifyOptions: {
          warnings: false,
          comments: false,
        },
      }),
      new OptimizeCSSPlugin({
        cssProcessorOptions: { safe: true, map: { inline: false } },
      }),
    ],
}

注意: 由于配置了webpack的optimization.minimizer项目会覆盖默认的JS压缩选项,所以JS代码也需要通过插件自己压缩.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值