npm run build后将打包文件夹生成zip压缩包

  1. 安装依赖
bash 复制代码
npm install archiver --save-dev
  1. 准备compress.js文件
javascript 复制代码
const fs = require('fs');
const archiver = require('archiver');

const sourceDir = './dist';  //替换为你的文件夹路径
const outputZip = './dist.zip';

console.log(`开始压缩`);
const output = fs.createWriteStream(outputZip);
const archive = archiver('zip', { zlib: { level: 9 } });

output.on('close', () => {
  console.log(`压缩完成: ${archive.pointer()} 字节`);
});

archive.pipe(output);
archive.directory(sourceDir, true);//true则保留顶级目录,false则不保留
archive.finalize();
  1. 在package.json中调用compress.js

在build命令后面,添加并执行一个postbuild命令。

javascript 复制代码
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "postbuild": "node compress.js"
  },

于是,当运行npm run build后,会先生成打包文件夹,再基于该文件夹生成zip压缩包。

相关推荐
失忆爆表症17 分钟前
05_UI 组件库集成指南:Shadcn/ui + Tailwind CSS v4
前端·css·ui
小迷糊的学习记录18 分钟前
Vuex 与 pinia
前端·javascript·vue.js
发现一只大呆瓜30 分钟前
前端性能优化:图片懒加载的三种手写方案
前端·javascript·面试
不爱吃糖的程序媛40 分钟前
Flutter 与 OpenHarmony 通信:Flutter Channel 使用指南
前端·javascript·flutter
利刃大大41 分钟前
【Vue】Element-Plus快速入门 && Form && Card && Table && Tree && Dialog && Menu
前端·javascript·vue.js·element-plus
NEXT061 小时前
AI 应用工程化实战:使用 LangChain.js 编排 DeepSeek 复杂工作流
前端·javascript·langchain
念风零壹1 小时前
AI 时代的前端技术:从系统编程到 JavaScript/TypeScript
前端·ai
光影少年2 小时前
react的hooks防抖和节流是怎样做的
前端·javascript·react.js
小毛驴8502 小时前
Vue 路由示例
前端·javascript·vue.js
发现一只大呆瓜2 小时前
AI流式交互:SSE与WebSocket技术选型
前端·javascript·面试