vue 批量下载图片并打包成zip包

  • 1、前端展示效果
  • 2、前端代码

1、前端展示效果

2、前端代码

第一步:安装jszip 、file-saver

cnpm install jszip
cnpm install file-saver

第二步:导入jszip 、file-saver

 import JSZip from 'jszip'import FileSaver from "file-saver"

第三步:展示代码

  <!--查看照片--><el-dialog title="查看照片" :visible.sync="watchPohotVisible" width="40%" :close-on-click-modal="false"><div align="right"><el-button icon="el-icon-download" type="primary"  @click="downImg">图片下载</el-button></div><div><el-form><el-form-item><div  style="width: 100%;margin-top: 40px;" v-if="galleryRefresh"><divclass="image"v-for="(image, imageIndex) in images":key="imageIndex"@click="index = imageIndex":style="{ backgroundImage: 'url(' + image.thumbnail + ')', width: '200px', height: '200px'}"></div></div></el-form-item></el-form></div></el-dialog>

第四步:下载方法

 //通过url 转为blob格式的数据getImgArrayBuffer(url){let _this=this;return new Promise((resolve, reject) => {//通过请求获取文件blob格式let xmlhttp = new XMLHttpRequest();xmlhttp.open("GET", url, true);xmlhttp.responseType = "blob";xmlhttp.onload = function () {if (this.status == 200) {resolve(this.response);}else{reject(this.status);}};xmlhttp.send();});},// imgDataUrl 数据的url数组downImg() {let _this = this;let zip = new JSZip();let cache = {};let promises = [];_this.title = '正在加载压缩文件';for (let item of this.images) {const promise= _this.getImgArrayBuffer(item.href).then(data => {// 下载文件, 并存成ArrayBuffer对象(blob)zip.file(item.title, data, { binary: true }); // 逐个添加文件cache[item.title] = data;});promises.push(promise);}Promise.all(promises).then(() => {zip.generateAsync({ type: "blob" }).then(content => {_this.title = '正在压缩';// 生成二进制流FileSaver.saveAs(content, '照片'); // 利用file-saver保存文件  自定义文件名_this.title = '压缩完成';});}).catch(res=>{_this.$message.error('文件压缩失败');});},

参考 vue将文件/图片批量打包下载

vue 批量下载图片并打包成zip包相关推荐

  1. java实现批量下载图片并打包成zip

    今天项目经理让做一个功能,就是批量下载图片,整体思路简单,但遇到了一个坑,需求是根据勾选的checkbox,点击下载按钮,弹出选择不同规格的图片对话框,并在下载完成后关闭对话框.坑就在下载完成后关闭对 ...

  2. Java实现批量下载图片,打包成zip压缩包

    /*** 批量下载图片后台逻辑* @return*/ @GetMapping("/downLoad") public void download(HttpServletReques ...

  3. java 批量下载图片并打包成zip压缩包

    项目需求: 对接第三方接口时,因为数据中存储的是图片链接,第三方审核时需要把所有图片以zip压缩包的方式传入到他们ftp服务中. 提示:以下是本篇文章正文内容,下面案例可供参考 话不多说直接看代码,案 ...

  4. 批量下载文件,打包成zip压缩包

    批量下载文件,用程序打成zip压缩包在下载 前台传来要下载的url数组 @RequestMapping(value = "/download",method = RequestMe ...

  5. java后台批量下载文件并压缩成zip下载

    因项目需要,将服务器上的图片文件压缩打包zip,下载到本地桌面. 首先,前端js: function doQueryPic() {var picsDate = $("#picsDate&qu ...

  6. 将文件打包成zip包

    参考:http://brushupo.i.sohu.com/blog/view/161729800.htm zip下载代码: package com.util;import java.io.Buffe ...

  7. java 二进制 包_如何用JAVA把内存里的二进制文件打包成ZIP包

    import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.ut ...

  8. JavaScript前端批量下载图片文件打包下载

    参考:https://blog.csdn.net/qdm13209211861/article/details/126668206 参考代码在获取base64的时候有图片失真的问题.下面的代码已经修复 ...

  9. java 批量下载图片,批量打包文件并下载

    1.批量下载网页上,动态生成的图片到服务器上指定的目录中 2.将目录中的所有的图片打包成zip包 3.删除原来的目录 4.下载zip包 1:由于网页上的图片是全部都是连接动态生成的,所以同事在网上找了 ...

  10. python打包zip文件_python 解压文件,合并文件 打包成zip格式文件 生成MD5值

    #!/usr/bin/env python #_*_encoding:utf-8 # 2018/05/29 #augustyang #2.0 ''' 解压文件,合并文件 打包成zip格式文件 生成MD ...

最新文章

  1. linux的more 命令
  2. 转-Android中自动连接到指定SSID的Wi-Fi
  3. 开源 Web 应用最常见漏洞是 XSS 和 SQLI 漏洞
  4. ue4 怎么修改骨骼动画_UE4换装系统(合并骨骼模型)
  5. Android -- onWindowFocusChanged
  6. 推荐]招商就象谈恋爱
  7. Python正则表达式re模块
  8. python运维开发_python运维开发
  9. qcnfa435_【路由知识小课堂番外篇】支持MU-MIMO技术设备一览表(2017.9.25第一版)...
  10. cvpr 2018 image caption generation论文导读(含workshop)
  11. 离线安装 Enhanced Class Decompiler
  12. 用计算机如何计算投资回收期,动态投资回收期怎么算的?
  13. 猫哥教你写爬虫 022--类与对象(下)
  14. 初阶数据结构 初识二叉树
  15. 小米智能插座监控设备耗电,并自动断电
  16. NancyFx系列之 Hello World
  17. shel脚本-更新hosts
  18. Hive 1.2.1 UI(HWI)配置
  19. 【html/css】CSS中去掉li前面的圆点方法
  20. 在ABAQUS中使用修正DPC模型

热门文章

  1. python爬虫(三):校花图片爬取
  2. linux内核模块的依赖性、查看、加载与删除
  3. Matlab中ismissing函数的使用
  4. RK3066开发板的唯一码UUID
  5. 多个域名指向一个ip
  6. 懒癌发作,福利直接发,不抢白不抢!
  7. Google guava之SortedMultiset简介说明
  8. nodejs之utility,crypto使用
  9. C++中的trivial destructor和non-trivial destructor
  10. 基于BP神经网络的车牌识别问题研究附Matlab代码