利用a标签实现文件下载功能(ant design vue可用)

利用a标签实现文件下载功能(ant design vue可用)# 利用a标签实现文件下载功能(ant design vue可用)## 代码和注释“`let fileUrl = “” //所下载文件的网络地址let fileName = “” //下载成功后保存的文件名//创建一个a标签 const link = document.createElement(

利用a标签实现文件下载功能(ant design vue可用)

# 利用a标签实现文件下载功能(ant design vue可用)
## 代码和注释
“`
let fileUrl = “” //所下载文件的网络地址
let fileName = “” //下载成功后保存的文件名
//创建一个a标签
const link = document.createElement(‘a’);
//设置是否在当前页面打开,target其他取值及含义:_blank:新窗口打开。_parent:在父窗口中打开链接。_self:默认,当前页面跳转。_top:在当前窗体打开链接,并替换当前的整个窗体(框架页)。
link.target = ‘_blank’ //如果该值为‘_self’该行可忽略
//将a标签隐藏起来
link.style.display = ‘none’;
// 给a标签设置下载的网络地址
link.href = URL.createObjectURL(blob);
//设置保存下来的文件名
link.download = fileName + ‘.pdf’;
//将a标签添加到文档对象中
document.body.appendChild(link);
//触发相应事件
link.click();
//移除a标签
link.remove();
//进行到这一步对于一些浏览器或者一些格式已经成功啦但是对于图片、文档可能它是预览状态,解决方式 参考下面方法
fetch(fileUrl).then(res => res.blob()).then((blob) => {
link.href = URL.createObjectURL(blob);
link.download = fileName + ‘.pdf’;
document.body.appendChild(link);
link.click();
link.remove();
});
“`
## 纯代码
### 第一种
“`
let fileUrl = “” //所下载文件的网络地址
let fileName = “” //下载成功后保存的文件名
const link = document.createElement(‘a’);
link.target = ‘_blank’ //如果该值为‘_self’该行可忽略
link.style.display = ‘none’;
link.href = URL.createObjectURL(blob);
link.download = fileName + ‘.pdf’;
document.body.appendChild(link);
link.click();
link.remove();
“`
### 第二种
“`
let fileUrl = “” //所下载文件的网络地址
let fileName = “” //下载成功后保存的文件名
const link = document.createElement(‘a’);
link.target = ‘_blank’ //如果该值为‘_self’该行可忽略
link.style.display = ‘none’;
fetch(fileUrl).then(res => res.blob()).then((blob) => {
link.href = URL.createObjectURL(blob);
link.download = fileName + ‘.pdf’;
document.body.appendChild(link);
link.click();
link.remove();
});
“`

今天的文章利用a标签实现文件下载功能(ant design vue可用)分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/56967.html

(0)
编程小号编程小号
上一篇 2023-08-26 08:30
下一篇 2023-08-26

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注