Vue  webpack 项目自动打包压缩成zip文件的方法


Posted in Javascript onJuly 24, 2019

这段时间用 Vue2.0 开发项目,每次打包都会用到 npm run build 命令,但是每次部署时给后端发包都要手动zip压缩,这样一两次还行,但遇到项目板块测试和临时加急功能测试的时候,一天可能就要打包好多次,这就很烦了。所以索性在执行 npm run build 命令时就直接打包成zip文件,方便省事!

1、插件装备

webpack插件:filemanager-webpack-plugin,该插件可执行打包,复制,移动,删除文件以及新文件夹在build之前及之后创建。

安装:

npm install filemanager-webpack-plugin --save-dev
或
cnpm install filemanager-webpack-plugin --save-dev

2、webpack配置

① 在项目 根目录 build/webpack.base.config.js 中 抬头变量声明区域添加

const FileManagerPlugin = require('filemanager-webpack-plugin')

② 在根目录 build/webpack.base.config.js 内找到 module.exports。 然后在plugins内添加

new FileManagerPlugin({
 onEnd: {
  delete: [
   './dist/control-operate.zip',
  ],
  archive: [
   {source: './dist', destination: './dist/control-operate.zip'},
  ]
 }
})

注:若 plugins不存在,则新建plugins,plugins为数组格式。

Vue  webpack 项目自动打包压缩成zip文件的方法

3、执行效果

配置完成后,重新执行 npm run build 命令。执行完成后,在dist文件夹内(上面配置的目的地目录为 dist文件夹),就可以看到压缩好的zip文件包了。

Vue  webpack 项目自动打包压缩成zip文件的方法

4、其他功能

module.exports = {
 ......
 plugins: [
  new FileManagerPlugin({
   onEnd: {
    copy: [
     {source: '/path/from', destination: '/path/to'},
     {source: '/path/**/*.js', destination: '/path'},
     {source: '/path/fromfile.txt', destination: '/path/tofile.txt'},
     {source: '/path/**/*.{html,js}', destination: '/path/to'},
     {source: '/path/{file1,file2}.js', destination: '/path/to'},
     {source: '/path/file-[hash].js', destination: '/path/to'}
    ],
    move: [
     {source: '/path/from', destination: '/path/to'},
     {source: '/path/fromfile.txt', destination: '/path/tofile.txt'}
    ],
    delete: [
     '/path/to/file.txt',
     '/path/to/directory/'
    ],
    mkdir: [
     '/path/to/directory/',
     '/another/directory/'
    ],
    archive: [
     {source: '/path/from', destination: '/path/to.zip'},
     {source: '/path/**/*.js', destination: '/path/to.zip'},
     {source: '/path/fromfile.txt', destination: '/path/to.zip'},
     {source: '/path/fromfile.txt', destination: '/path/to.zip', format: 'tar'},
     {
      source: '/path/fromfile.txt',
      destination: '/path/to.tar.gz',
      format: 'tar',
      options: {
       gzip: true,
       gzipOptions: {
        level: 1
       }
      }
     }

    ]
   }
  })
 ],
 ......
}

总结

以上所述是小编给大家介绍的Vue  webpack 项目自动打包压缩成zip文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
jQuery EasyUI API 中文文档 - Dialog对话框
Nov 15 Javascript
Ajax提交与传统表单提交的区别说明
Feb 07 Javascript
js简单实现调整网页字体大小的方法
Jul 23 Javascript
AngularJS全局scope与Isolate scope通信用法示例
Nov 22 Javascript
全面解析Node.js 8 重要功能和修复
Jun 02 Javascript
vue.js组件之间传递数据的方法
Jul 10 Javascript
详细分析单线程JS执行问题
Nov 22 Javascript
vue中使用cropperjs的方法
Mar 01 Javascript
node 命令方式启动修改端口的方法
May 12 Javascript
element UI upload组件上传附件格式限制方法
Sep 04 Javascript
React生命周期原理与用法踩坑笔记
Apr 28 Javascript
简单了解JavaScript作用域
Jul 31 Javascript
JavaScript面向对象中接口实现方法详解
Jul 24 #Javascript
IE11下处理Promise及Vue的单项数据流问题
Jul 24 #Javascript
微信小程序如何引用外部js,外部样式,公共页面模板
Jul 23 #Javascript
详解Vue中的基本语法和常用指令
Jul 23 #Javascript
js如何获取访问IP、地区、当前操作浏览器
Jul 23 #Javascript
node.js express框架简介与实现
Jul 23 #Javascript
js微信分享接口调用详解
Jul 23 #Javascript
You might like
用PHP实现小型站点广告管理
2006/10/09 PHP
PHP 定界符 使用技巧
2009/06/14 PHP
php date()日期时间函数详解
2010/05/16 PHP
php简单smarty入门程序实例
2015/06/11 PHP
Mac版PhpStorm之XAMPP整合apache服务器配置的图文教程详解
2016/10/13 PHP
PhpStorm配置Xdebug调试的方法步骤
2019/02/02 PHP
addRule在firefox下的兼容写法
2006/11/30 Javascript
Javascript 类型转换方法
2010/10/24 Javascript
修复IE9&safari 的sort方法
2011/10/21 Javascript
浅析jquery的作用与优势
2013/12/02 Javascript
使用js dom和jquery分别实现简单增删改
2014/09/11 Javascript
基于javascript数组实现图片轮播
2016/05/02 Javascript
14 个折磨人的 JavaScript 面试题
2016/08/08 Javascript
Angular中使用ui router实现系统权限控制及开发遇到问题
2016/09/23 Javascript
利用JS判断字符串是否含有数字与特殊字符的方法小结
2016/11/25 Javascript
vue router 传参获取不到的解决方式
2019/11/13 Javascript
[57:41]Secret vs Serenity 2018国际邀请赛小组赛BO2 第一场 8.16
2018/08/17 DOTA
Python获取运行目录与当前脚本目录的方法
2015/06/01 Python
Python实现简单遗传算法(SGA)
2018/01/29 Python
python实现在IDLE中输入多行的方法
2018/04/19 Python
Python+Selenium使用Page Object实现页面自动化测试
2019/07/14 Python
Python综合应用名片管理系统案例详解
2020/01/03 Python
使用phonegap进行本地存储的实现方法
2017/03/31 HTML / CSS
Levi’s美国官网:美国著名的牛仔裤品牌
2016/08/19 全球购物
周仰杰(JIMMY CHOO)英国官方网站:闻名世界的鞋子品牌
2018/10/28 全球购物
哈萨克斯坦最大的时装、鞋子和配饰在线商店:Lamoda.kz
2019/11/19 全球购物
企业厂长岗位职责
2013/12/17 职场文书
2014年秋季开学典礼主持词
2014/08/02 职场文书
公司党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
优秀共产党员推荐材料
2014/12/18 职场文书
简历中自我评价范文
2015/03/11 职场文书
八年级语文教学反思
2016/03/03 职场文书
MySQL之高可用集群部署及故障切换实现
2021/04/22 MySQL
Django显示可视化图表的实践
2021/05/10 Python
分享MySQL常用 内核 Debug 几种常见方法
2022/03/17 MySQL
TaiShan 200服务器安装Ubuntu 18.04的图文教程
2022/06/28 Servers