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压缩包。

相关推荐
接着奏乐接着舞4 小时前
react hooks
前端·javascript·react.js
踢球的打工仔4 小时前
前端html(3)
前端·算法·html
IDOlaoluo4 小时前
nginx-sticky怎么用 Nginx 负载均衡添加 sticky 模块完整步骤
前端·chrome
接着奏乐接着舞4 小时前
react redux 分组
前端·javascript·react.js
IT_陈寒4 小时前
Vue 3.4 性能优化揭秘:这5个Composition API技巧让我的应用提速40%
前端·人工智能·后端
行走的陀螺仪4 小时前
实时通信底层原理深度剖析:短轮询、长轮询与WebSocket的本质差异
前端·网络·websocket·网络协议
极地星光4 小时前
Node.js:从核心优势到企业级全场景应用解析
node.js
大猩猩X4 小时前
vue vxe-gantt 甘特图实现产品进度列表,自定义任务条样式和提示信息
前端·javascript·甘特图·vxe-ui·vxe-gantt
一字白首4 小时前
Vue 进阶,生命周期 + 工程化开发
前端·javascript·vue.js
沐风。564 小时前
css函数
前端·css·css3