vue-cli3 图片压缩【image-webpack-loader】使用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了vue-cli3 图片压缩【image-webpack-loader】使用相关的知识,希望对你有一定的参考价值。

参考技术A 4M的图片使用默认设置压缩成1.4M,自定义的设置可以更小

vue.js - 解决vue-cli打包后自动压缩代码

当我们用vue脚手架做完项目后,npm run build打包之后,

有没有查看源码,全是压缩好的。但是我就不想让它压缩,该怎么办呢?

困惑了几天,查了各种资料。终于终于...

来,上干货:

首先,我们得了解一点点webpack的知识。

webpack中压缩js 的插件叫 uglifyjs-webpack-plugin,

压缩css 的插件叫 optimize-css-assets-webpack-plugin

然后我们找到/build/webpack.prod.conf.js 文件,

然后你会发现:

const OptimizeCSSPlugin = require(‘optimize-css-assets-webpack-plugin‘)
const UglifyJsPlugin = require(‘uglifyjs-webpack-plugin‘)

然后我们就可以在页面中搜索OptimizeCSSPlugin 和 UglifyJsPlugin 这两个关键词所在的地方

配置如下:

    // css 压缩代码,将下面代码注释掉
    new OptimizeCSSPlugin({
      cssProcessorOptions: config.build.productionSourceMap
        ? { safe: true, map: { inline: false } }
        : { safe: true }
    }),
   // 压缩js代码,将下面代码注释掉
    new UglifyJsPlugin({
      uglifyOptions: {
        compress: {
          warnings: false
        }
      },
      sourceMap: config.build.productionSourceMap,
      parallel: true
    }),

只要将上面代码注释掉,npm run build 你就会发现,欧了。

然后是html 了,

配置如下:

new HtmlWebpackPlugin({
      filename: process.env.NODE_ENV === ‘testing‘
        ? ‘index.html‘
        : config.build.index,
      template: ‘index.html‘,
      inject: true,
      minify: {
        removeComments: true,
        collapseWhitespace: true,
        removeAttributeQuotes: true
        // more options:
        // https://github.com/kangax/html-minifier#options-quick-reference
      },

这里我们将上面的 minify 改成 minify:false

是的,就可以了。

以上是关于vue-cli3 图片压缩【image-webpack-loader】使用的主要内容,如果未能解决你的问题,请参考以下文章

一份关于vue-cli3项目常用项配置

如何在vue-cli3里面压缩代码

取消vue-cli打包自动压缩代码的方法

vue-cli3.0配置图片转base64的规则

vue-cli3中引入图片的几种方式和注意事项

vue-cli3或者4中如何正确的使用public中的图片