js实现文件下载并重命名
背景:element-ui写的一个表格,由于数据量太多而目前的筛选功能不完善,新增了导出数据的功能,一键将所有数据下载为一个excel,让运营人员去excel中搜索。导出数据的功能是后端小哥哥做哒,前端只负责下载。
此时,后台小哥哥抛给你一个下载的url
可以用
window.location.href = url;
来下载,但是不够优美(不能根据需求重命名
一般的做法是获取文件 Blob,然后下载重命名,简单整理了一下
// 下载方法downloadExcel(url, filename) {this.getBlob(url).then((blob) => {this.saveAs(blob, filename);});},/*** 获取 blob* @param {String} url 目标文件地址* @return {Promise}*/getBlob(url) {return new Promise((resolve) => {const xhr = new XMLHttpRequest();xhr.open('GET', url, true);xhr.responseType = 'blob';xhr.onload = () => {if (xhr.status === 200) {resolve(xhr.response);}};xhr.send();});},/*** 保存* @param {Blob} blob* @param {String} filename 想要保存的文件名称*/saveAs(blob, filename) {if (window.navigator.msSaveOrOpenBlob) {navigator.msSaveBlob(blob, filename);} else {const link = document.createElement('a');const body = document.querySelector('body');link.href = window.URL.createObjectURL(blob);link.download = filename;// fix Firefoxlink.style.display = 'none';body.appendChild(link);link.click();body.removeChild(link);window.URL.revokeObjectURL(link.href);}},
js实现文件下载并重命名相关推荐
- 纯js实现文件下载并重命名功能
/*** 获取 blob* @param {String} url 目标文件地址* @return {cb} */ function getBlob(url,cb) {var xhr = new XM ...
- JavaScript 实现文件下载并重命名
JavaScript 实现文件下载并重命名 第一种是HTML官网中的方法 <a href="/images/liang.jpg" download="文件名称&qu ...
- php文件夹重命名,php文件下载并重命名
1.下载本地文件 $file_url = "./本地路径" $out_filename = '下载后自动保存的名字'; if(!file_exists($file_url)) { ...
- php文件下载并重命名
1.下载本地文件 $file_url = "./本地路径" $out_filename = '下载后自动保存的名字'; if(!file_exists($file_url)) ...
- php设置下载名,php文件下载并重命名
1.下载本地文件 $file_url = "./本地路径" $out_filename = '下载后自动保存的名字'; if(!file_exists($file_url)) { ...
- js多文件下载和多文件分文件夹打包下载并重命名
js多文件下载并重命名 let list=['...'] function downloadFile(list,index){//下载文件方法if(index>=list.length){ret ...
- SpringBoot下载网络文件并重命名,比如:excel
文件下载,通过<a href="url">也是可以的,但是这样直接下载,一般文件名就是服务器端的没有任何意义的文件名. 今天自己用到了另外一种,先说需求:1.文件服务器 ...
- vue下载文件并重命名
vue的项目,需要做一个文件上传下载的功能.上传是OK的,然鹅因为上传到minio的时候,使用了随机数命名,导致文件名称就变成了一大串字符.被客户驳回来了.那好吧,就加一个重命名功能好了. 不过这个项 ...
- scp 保留文件属组_scp 对拷文件夹 和 文件夹下的所有文件 对拷文件并重命名
对拷文件夹 (包括文件夹本身) scp -r /home/wwwroot/www/charts/util root@192.168.1.65:/home/wwwroot/limesurvey_ba ...
最新文章
- Chrome v28 会在pwd目录下生成libpeerconnection.log文件
- linux系统取消自检,[转载]取消Linux启动自检
- curl命令java_让 Bug 无处藏身,Java 线上问题排查思路、常用工具
- 洛谷P3845-球赛【离散化,贪心】
- vue.js 源代码学习笔记 ----- decoder
- GoldenGate Director安装
- E-day0003:generate
- LCA的 Trajan 算法
- M1 Mac无法读取NTFS格式硬盘里的内容应该怎样操作?
- 【有利可图网】PS实战教程55:打破次元壁,将照片从三次元跨越到二次元
- e语言截图软件怎么保存在c盘,电脑截图文件保存在哪_电脑截图保存在哪里
- 视频伪原创工具 剪辑过的视频md5会改变吗
- 福州古刹梅花盛开 古装赏梅成“娇点”
- 题目0155-特异性双端队列
- wireshark显示没有找到接口且当cmd界面输入net start npf显示服务名无效解决办法
- TCP/IP连接释放
- 简述CPU,内存,硬盘,指令之间的关系
- stm32的Hal库函数,串口卡死解决方法
- -webkit-flex 属性
- 简易版“美颜”来了!肝了一夜!用Python做一个高瘦脸神器!