webpack无损压缩本地静态资源图片image-minimizer-webpack-plugin

开发如果项目中引用了较多图片,那么图片体积会比较大,将来请求速度比较慢。
我们可以对图片进行压缩,减少图片体积。

一、image-minimizer-webpack-plugin介绍

Image-minimizer-webpack-plugin是一个用于优化和压缩图片Webpack插件。它使用多个优化器和压缩器来减小图片文件的大小,包括mozjpeg、pngquant、svgogifsicle等库。

该插件可以帮助我们在构建应用程序或网站时减少图片文件大小,从而提高网站的性能和速度。在使用Image-minimizer-webpack-plugin之后,我们可以减少页面加载时间,提高用户体验

除了压缩图片之外,该插件还提供了其他一些功能,如支持WebP格式,并支持使用不同的压缩选项来优化图片。因此,Image-minimizer-webpack-plugin是Web开发人员优化网站和提高性能的重要工具之一。

下载:

npm i image-minimizer-webpack-plugin imagemin -D

其他依赖,无损压缩

npm install --ignore-scripts imagemin-gifsicle imagemin-jpegtran imagemin-optipng imagemin-svgo -D

配置:

  • webpack.config.js
const ImageMinimizerPlugin = require("image-minimizer-webpack-plugin");
module.exports = {
    optimization: {
       minimizer: [
       		// 压缩图片
      		new ImageMinimizerPlugin({
       		 minimizer: {
        		  implementation: ImageMinimizerPlugin.imageminGenerate,
        		  options: {
          		  plugins: [
           		   ["gifsicle", { interlaced: true }],
            		  ["jpegtran", { progressive: true }],
            		  ["optipng", { optimizationLevel: 5 }],
              		[
             		   "svgo",
              		  {
               		   plugins: [
                 		   "preset-default",
                 		   "prefixIds",
                		    {
                 		     name: "sortAttrs",
                  		    params: {
                  		      xmlnsOrder: "alphabetical",
                   		   },
                  		  },
                		  ],
               		 },
              		],
           		 ],
         		 },
      		  },
     		 }),
		]
	}
	
}

配置完成之后就进行打包,可能会打包失败

如图:
在这里插入图片描述

报错的地方是这两个依赖中没有这个两个exe文件,
我们需要安装两个文件到 node_modules 中才能解决

去对应的官网下在下来

下载下来之后添加到如图所示的文件目录

在这里插入图片描述
在这里插入图片描述
添加玩之后再次重新打包就可以啦

npm run build

打包之前我们看看现在的图片大小
在这里插入图片描述
如上图是38k

打包后图片大小:
在这里插入图片描述
如图打包压缩后的图片大小是29k,接近压缩了10k

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jieyucx

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值