vue将文件/图片/视频批量打包成压缩包,并进行下载
1.安装插件,由于是需要正式环境也要使用,不加后缀或者加上-s都可。
npm install jszip
npm install file-saver
2.调用方法
//通过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();});},
3. 打包
// imgDataUrl 数据的url数组
BatchDownload(){let _this = this;let zip = new JSZip();let cache = {};let promises = [];_this.title = '正在加载压缩文件';for (let item of this.imgDataUrl) {const promise= _this.getImgArrayBuffer(item.path).then(data => {// 下载文件, 并存成ArrayBuffer对象(blob)zip.file(item.name, data, { binary: true }); // 逐个添加文件cache[item.name] = 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将文件/图片/视频批量打包成压缩包,并进行下载相关推荐
- 电脑jpg图片怎么批量转换成png
电脑jpg图片怎么批量转换成png?电商行业的职场工作中,时常会有这样的需求存在.如果是用一般的图片处理软件进行操作,效率往往过慢且容易出现遗漏等问题.这个时候职场人需要用到更加切合我们需求的办公软件 ...
- twitter图片视频批量下载
twitter图片视频批量下载 学python之前试用过一个twitter批量下载图片的软件,甚至没有视频下载,官方收费还是蛮贵的,学了python之后尝试着自己写了一个,把代码发布出来,和大家交流一 ...
- java实现图片jpg批量转换成pdf
java实现图片jpg批量转换成pdf package jpgTopdf; import java.awt.image.BufferedImage; import java.io.File; impo ...
- MVC实现实现文件流打包成压缩包
MVC实现实现文件流打包成压缩包 1.使用压缩类库SharpZipLib SharpZipLib 是一款比较经典实用C#压缩类库 SharpZipLib 库特点:功能丰富.稳定 ,支持主流 zip.G ...
- Java语言TAR文件(文件夹)批量打包压缩
最近项目中需要将文件和文件夹一起打包压缩为tar.gz文件,特此记录便于日后查阅. package com.openailab.oascloud.file.util;import org.apache ...
- php 生成zip并下载,PHP 实现文件打包成zip格式并下载
PHP 文件打包并下载 有个这样的需求,将多个文件打包成zip格式并下载到本地 可根据 ZipArchive这个类来实现此功能 我自己也研究了一下,然后把搞出来了 ,经测试绝对好用 话不多说直接上代码 ...
- java 批量下载图片,批量打包文件并下载
1.批量下载网页上,动态生成的图片到服务器上指定的目录中 2.将目录中的所有的图片打包成zip包 3.删除原来的目录 4.下载zip包 1:由于网页上的图片是全部都是连接动态生成的,所以同事在网上找了 ...
- 批量图片处理,打包成zip
由于用户要选择图片打包成zip下载. 首先我们要把图片或者是其他文件打包成zip. import java.io.File; import java.io.FileInputStream; impor ...
- linux环境对apk文件写入数据,Linux下7zip命令apk中插入文件标识渠道批量打包
项目需要:需要对某个包分包,对渠道和下面的包做标记,但又不改变原包的签名,想到在原apk中插入某个带渠道号和包号的文件,服务器Linux环境,采用7zip 压缩格式解压,打包,插入文件到apk解压后的 ...
- excel中html批量转化为pdf文件,excel怎么批量转换成pdf格式
时间:2020-02-10来源:百度经验作者:名字是代称阅读:5 Excel一直以来都是作为表格存入数据作用的,同时编辑数据也非常方便.但是若只用来阅读,却并不方便.而pdf格式很方便阅读,所以有人就 ...
最新文章
- 使用python连接数据库
- hdu-2066(Dijkstra)
- mysql默认数据库名称,默认的MySQL数据库名称
- c++ 动态数组初始值不为0?
- python是什么意思怎么读-python怎么读(python怎么读中文)
- 一人身兼多个项目时的“课程表”工作模式实践
- vivado中交织模块_Adalm Pluto SDR主动学习模块让您拥有完善的无线电RF射频实验室...
- sql server 排名函数:DENSE_RANK
- 高等数学公式(latex)
- 1 搭建Flash游戏开发环境
- vue项目中使用ramda库
- Docker容器中添加字体
- 洛谷【入门4】数组 P2141 [NOIP2014 普及组] 珠心算测验
- 电竞LOL数据API接口 - 【赛事列表数据】API调用示例代码
- 混合式学习,以学习者为中心的新型教学形式
- 这位程序员桌面很干净
- 漫画 | Code Review快把我逼疯了!
- 个人网站真能转成商业网站,你能么?
- Selenium Chrome设置代理之后验证依旧是本机ip原因
- MySQL-- 单表查询