当前位置: 首页 > backend >正文

前端打包自动压缩为zip--archiver

安装依赖

pnpm add archiver @types/archiver

/vitePlugins/autoBuildZip.ts

import { Plugin } from 'vite';
import archiver from 'archiver';
import fs from 'fs';const compressFolder = (folderPath: string, outputFilePath: string) => {const output = fs.createWriteStream(`${__dirname}/../${outputFilePath}.zip`);const archive = archiver('zip', {zlib: { level: 9 },});output.on('close', function () {const size = (archive.pointer() / 1024 / 1024).toFixed(2);console.log(`----------------------------------------------------------------                  压缩完成                    ------------ 文件路径:项目根目录:${outputFilePath}.zip     ------------               文件大小${size}M                  ----------------------------------------------------------------`);});archive.on('warning', function (err: { code: string }) {if (err.code === 'ENOENT') {} else {throw err;}});archive.on('error', function (err: any) {throw err;});archive.pipe(output);archive.directory(folderPath, outputFilePath);archive.finalize();
};export default function autoBuildZip(fileName: string): Plugin {return {name: 'vite:autoBuildZip',apply: 'build',enforce: 'post',closeBundle() {compressFolder(fileName, fileName);},};
}

使用

vite.config.ts中引入

// 该插件用于自动打包zip文件
import autoBuildZip from './vitePlugins/autoBuildZip';plugins:[autoBuildZip('dist'),
]
http://www.xdnf.cn/news/15462.html

相关文章:

  • MongoDB数据问题说明
  • 大模型在1型糖尿病肾病V期预测及治疗方案制定中的应用研究
  • 《大数据技术原理与应用》实验报告五 熟悉 Hive 的基本操作
  • 用uniapp开发鸿蒙应用(暂停更新-根据项目更新,现在项目未开始)
  • LangChain智能体开发实战:从零构建企业级AI助手
  • 17、鸿蒙Harmony Next开发:状态管理(组件拥有的状态和应用拥有的状态)
  • 3种添加视频水印的加密方式,守护视频安全!
  • OpenCV 对比度拉伸图像增强函数contrastStretching()
  • 基于UDP/IP网络游戏加速高级拥塞控制算法(示意:一)
  • 21-C#的委托简单使用-1
  • 【zynq7020】PS的“Hello World”
  • Android弹窗
  • 【C++】初识C++(1)
  • 映美打印机-URL页面打印
  • AI产品经理面试宝典第20天:AI+金融场景相关面试题及回答指导
  • 缓存穿透的“黑暗森林”假说——当攻击者学会隐藏恶意流量
  • 02 51单片机之LED闪烁
  • Knife4j快速入门
  • Java-IO流
  • Redis单线程详解
  • 多线程--单例模式and工厂模式
  • 2025-7-14-C++ 学习 排序(2)
  • C#——数据与变量
  • 力扣454.四数相加Ⅱ
  • ELK、Loki、Kafka 三种日志告警联动方案全解析(附实战 Demo)
  • AI香烟检测实战:YOLO11模型训练全过程解析
  • 【EM算法】三硬币模型
  • 机器学习/深度学习训练day1
  • 人工智能正逐步商品化,而“理解力”才是开发者的真正超能力
  • 【第一章编辑器开发基础第二节编辑器布局_1水平与垂直布局(1/4)】