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 相关文章推荐
JavaScript 异步调用框架 (Part 6 - 实例 & 模式)
Aug 04 Javascript
用jquery ajax获取网站Alexa排名的代码
Dec 12 Javascript
JavaScript定时器详解及实例
Aug 01 Javascript
JS动态添加与删除select中的Option对象(示例代码)
Dec 20 Javascript
JS弹出对话框实现方法(三种方式)
Dec 18 Javascript
jquery自动补齐功能插件flexselect用法示例
Aug 06 Javascript
jquery 判断div show的状态实例
Dec 03 Javascript
vue中实现methods一个方法调用另外一个方法
Feb 08 Javascript
基于js中的存储键值对以及注意事项介绍
Mar 30 Javascript
vue2 设置router-view默认路径的实例
Sep 20 Javascript
vue-router的使用方法及含参数的配置方法
Nov 13 Javascript
Vue实例的对象参数options的几个常用选项详解
Nov 08 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单文件版在线代码编辑器
2015/03/12 PHP
微信 getAccessToken方法详解及实例
2016/11/23 PHP
Gird组件 Part-3:范例RSSFeed Viewer
2007/03/10 Javascript
JavaScript高级程序设计 XML、Ajax 学习笔记
2011/09/10 Javascript
在线一元二次方程计算器实例(方程计算器在线计算)
2013/12/22 Javascript
javascript获取元素偏移量的方法有哪些
2014/06/24 Javascript
jQuery控制的不同方向的滑动(向左、向右滑动等)
2014/07/18 Javascript
javascript中setTimeout使用指南
2015/07/26 Javascript
node.js实现快速截图
2016/08/27 Javascript
Three.js入门之hello world以及如何绘制线
2017/09/25 Javascript
nodejs async异步常用函数总结(推荐)
2017/11/17 NodeJs
JS实现的集合去重,交集,并集,差集功能示例
2018/03/13 Javascript
关于Angularjs中跨域设置白名单问题
2018/04/17 Javascript
vue+eslint+vscode配置教程
2019/08/09 Javascript
javascript头像上传代码实例
2019/09/28 Javascript
Ant Design Vue table中列超长显示...并加提示语的实例
2020/10/31 Javascript
通过数据库对Django进行删除字段和删除模型的操作
2015/07/21 Python
python使用两种发邮件的方式smtp和outlook示例
2017/06/02 Python
Python2.7下安装Scrapy框架步骤教程
2017/12/22 Python
Python 实现在文件中的每一行添加一个逗号
2018/04/29 Python
python按时间排序目录下的文件实现方法
2018/10/17 Python
Django项目中实现使用qq第三方登录功能
2019/08/13 Python
3种python调用其他脚本的方法
2020/01/06 Python
通过代码实例解析Pytest运行流程
2020/08/20 Python
汽修专业学生自我鉴定
2013/11/16 职场文书
《从现在开始》教学反思
2014/04/15 职场文书
政府绩效管理实施方案
2014/05/04 职场文书
医德医风演讲稿
2014/05/20 职场文书
大学生毕业求职信
2014/06/12 职场文书
领导班子专题民主生活会情况想汇报
2014/09/30 职场文书
党的群众路线教育实践活动查摆问题自查报告
2014/10/10 职场文书
工作试用期自我评价
2015/03/10 职场文书
Python使用sql语句对mysql数据库多条件模糊查询的思路详解
2021/04/12 Python
阿里云k8s服务升级时502错误 springboot项目应用
2022/04/09 Servers
MySql数据库 查询时间序列间隔
2022/05/11 MySQL