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变强势
Jun 22 Javascript
Aptana调试javascript图解教程
Nov 30 Javascript
分别用marquee和div+js实现首尾相连循环滚动效果,仅3行代码
Sep 21 Javascript
Javascript中的isNaN函数使用说明
Nov 10 Javascript
jQuery中extend函数详解
Feb 13 Javascript
javascript删除元素节点removeChild()用法实例
May 26 Javascript
Bootstrap table右键功能实现方法
Feb 20 Javascript
详谈jQuery中的一些正则匹配表达式
Mar 08 Javascript
Vue中使用vux的配置详解
May 05 Javascript
JavaScript笛卡尔积超简单实现算法示例
Jul 30 Javascript
运用js实现图层拖拽的功能
May 24 Javascript
javascript中正则表达式语法详解
Aug 07 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使用array_rand()函数从数组中随机选择一个或多个元素
2014/04/28 PHP
PHP中rename()函数的妙用讲解
2019/02/28 PHP
Laravel框架集成UEditor编辑器的方法图文与实例详解
2019/04/17 PHP
JQery 渐变图片导航效果代码 漂亮
2010/01/01 Javascript
javascript中的prototype属性使用说明(函数功能扩展)
2010/08/16 Javascript
json数据处理技巧(字段带空格、增加字段、排序等等)
2013/06/14 Javascript
JavaScript移除数组元素减少长度的方法
2013/09/05 Javascript
JS将所有对象s的属性复制给对象r(原生js+jquery)
2014/01/25 Javascript
js动态创建及移除div的方法
2015/06/03 Javascript
Javascript监视变量变化的方法
2015/06/09 Javascript
Javascript对象Clone实例分析
2015/06/09 Javascript
jquery实现select下拉框美化特效代码分享
2015/08/18 Javascript
js根据手机客户端浏览器类型,判断跳转官网/手机网站多个实例代码
2016/04/30 Javascript
JS中的==运算: [''] == false —>true
2016/07/24 Javascript
详解vue事件对象、冒泡、阻止默认行为
2017/03/20 Javascript
javascript数据结构中栈的应用之符号平衡问题
2017/04/11 Javascript
Vue官网todoMVC示例代码
2018/01/29 Javascript
以v-model与promise两种方式实现vue弹窗组件
2018/05/21 Javascript
vue项目实现github在线预览功能
2018/06/20 Javascript
Node Express用法详解【安装、使用、路由、中间件、模板引擎等】
2020/05/13 Javascript
解决vue项目本地启动时无法携带cookie的问题
2021/02/06 Vue.js
[13:40]TI3青蛙君全程回顾 DOTA2我们为梦想再战
2013/09/13 DOTA
[01:29:46]DOTA2上海特级锦标赛C组资格赛#1 OG VS LGD第二局
2016/02/27 DOTA
[01:30:15]DOTA2-DPC中国联赛 正赛 Ehome vs Aster BO3 第二场 2月2日
2021/03/11 DOTA
利用Python的装饰器解决Bottle框架中用户验证问题
2015/04/24 Python
Django CBV与FBV原理及实例详解
2019/08/12 Python
Python从文件中读取数据的方法步骤
2020/11/18 Python
使用pandas读取表格数据并进行单行数据拼接的详细教程
2021/03/03 Python
开业庆典邀请函
2014/01/08 职场文书
农村婚礼证婚词
2014/01/10 职场文书
《雾凇》教学反思
2014/02/17 职场文书
cf搞笑广告词
2014/03/14 职场文书
运动会表扬稿
2015/01/16 职场文书
2015年度保密工作总结
2015/04/24 职场文书
《有余数的除法》教学反思
2016/02/22 职场文书
「月刊Comic Alive」2022年5月号封面公开
2022/03/21 日漫