[插件3 CSS] optimize-css-assets-webpack-plugin

用于优化或者压缩CSS资源

yarn add -D optimize-css-assets-webpack-plugin

这个插件可以接受下列配置(均为可选):

  • assetNameRegExp: 正则表达式,用于匹配需要优化或者压缩的资源名。默认值是 /\.css$/g
  • cssProcessor: 用于压缩和优化CSS 的处理器,默认是 cssnano.这是一个函数,应该按照 cssnano.process 接口(接受一个CSS和options参数,返回一个Promise)
  • canPrint: {bool} 表示插件能够在console中打印信息,默认值是true
// webpack4+
const OptimizeCssAssetsPlugin = require('optimize-css-assets-webpack-plugin');
const MiniCssExtractPlugin = require('mini-css-extract-plugin');

// webpack4 
module.exports = {
  optimization: {
    minimizer: [
      new UglifyJsPlugin({
        cache: true,
        parallel: true,
        sourcMap: true
      }),
      new OptimizeCssAssetsPlugin({
        assetNameRegExp: /\.optimize\.css$/g,
        cssProcessor: require('cssnano'),
        cssProcessorOptions: { safe: true, discardComments: { removeAll: true } },
        canPrint: true
      }),
    ],
  },
  module: {
    rules: [
      {
        test: /\.css$/,
        use: [
          MiniCssExtractPlugin.loader,
          'css-loader'
        ],
      },
    ],
  },
  plugins: [
    new MiniCssExtractPlugin({
      filename: "[name].css",
      chunkFilename: "[id].css"
    }),
  ]
};

webpack3中一般配合 ExtractTextPlugin一起使用。

你可能感兴趣的:([插件3 CSS] optimize-css-assets-webpack-plugin)