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 UI DatePicker中z-index默认为1的解决办法
Sep 28 Javascript
ASP.NET中基于JQUERY的高性能的TreeView补充
Feb 23 Javascript
jQuery操作表格(table)的常用方法、技巧汇总
Apr 12 Javascript
javascript实现节点(div)名称编辑
Dec 17 Javascript
jQuery实现动态表单验证时文本框抖动效果完整实例
Aug 21 Javascript
jquery点击切换背景色的简单实例
Aug 25 Javascript
Vue使用枚举类型实现HTML下拉框步骤详解
Feb 05 Javascript
vue-cli webpack 引入swiper的操作方法
Sep 15 Javascript
Vue实现远程获取路由与页面刷新导致404错误的解决
Jan 31 Javascript
使用vue-cli3+typescript的项目模板创建工程的教程
Feb 28 Javascript
Vue 构造选项 - 进阶使用说明
Aug 14 Javascript
Vue解决移动端弹窗滚动穿透问题
Dec 15 Vue.js
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
discuz安全提问算法
2007/06/06 PHP
PHP利用APC模块实现大文件上传进度条的方法
2015/10/29 PHP
PHP二维数组矩形转置实例
2016/07/20 PHP
基于jquery的获取mouse坐标插件的实现代码
2010/04/01 Javascript
从零开始学习jQuery (十) jQueryUI常用功能实战
2011/02/23 Javascript
EasyUI中combobox默认值注意事项
2015/03/01 Javascript
深入理解JavaScript系列(45):代码复用模式(避免篇)详解
2015/03/04 Javascript
JavaScript节点及列表操作实例小结
2015/08/05 Javascript
Bootstrap Table使用方法解析
2016/10/19 Javascript
javascript ASCII和Hex互转的实现方法
2016/12/27 Javascript
BOM之navigator对象和用户代理检测
2017/02/10 Javascript
Javarscript中模块(module)、加载(load)与捆绑(bundle)详解
2017/05/28 Javascript
vue2利用Bus.js如何实现非父子组件通信详解
2017/08/25 Javascript
Vue 源码分析之 Observer实现过程
2018/03/29 Javascript
微信小程序中为什么使用var that=this
2019/08/27 Javascript
vue实现微信浏览器左上角返回按钮拦截功能
2020/01/18 Javascript
python实现巡检系统(solaris)示例
2014/04/02 Python
介绍Python的@property装饰器的用法
2015/04/28 Python
使用Python的urllib2模块处理url和图片的技巧两则
2016/02/18 Python
Python3数字求和的实例
2019/02/19 Python
详解如何用TensorFlow训练和识别/分类自定义图片
2019/08/05 Python
Python英文文章词频统计(14份剑桥真题词频统计)
2019/10/13 Python
Python生态圈图像格式转换问题(推荐)
2019/12/02 Python
关于Kotlin中SAM转换的那些事
2020/09/15 Python
Nike澳大利亚官网:Nike.com (AU)
2019/06/03 全球购物
软件测试企业面试试卷
2016/07/13 面试题
外贸业务员岗位职责
2013/11/24 职场文书
高一物理教学反思
2014/01/24 职场文书
服装行业创业计划书范文
2014/02/05 职场文书
大学学生会竞选演讲稿
2014/04/25 职场文书
退学证明范本3篇
2014/10/29 职场文书
小学教师求职信范文
2015/03/20 职场文书
2015年音乐教学工作总结
2015/07/22 职场文书
Python进度条的使用
2021/05/17 Python
【海涛七七解说】DCG第二周:DK VS 天禄
2022/04/01 DOTA
JS实现页面炫酷的时钟特效示例
2022/08/14 Javascript