const handleDownload = () => {
const imgUrl1 ="https://cube.elemecdn.com/6/94/4d3ea53c084bad6931a56d5158a48jpeg.jpeg";
fetch(imgUrl1)
.then(response => response.blob())
.then(blob => {
// 创建一个Blob URL
const url = URL.createObjectURL(blob);
// 创建一个a标签用于下载
const a = document.createElement('a');
a.style.display = 'none';
a.href = url;
// 设置下载的文件名,这里假设是"avatar.jpeg"
a.download = `证书.png`;
document.body.appendChild(a);
a.click();
// 释放Blob URL
URL.revokeObjectURL(url);
// 清理a标签
document.body.removeChild(a);
})
.catch(error => console.error('下载失败:', error));
// const base64String = "data:image/jpeg;base64,/9j/4AAQSkZJRgABAQAAAQABAAD..."; // 示例Base64字符串
//
// // 提取Base64编码部分
// const byteString = atob(base64String.split(',')[1]);
//
// // 创建一个Blob对象
// const ab = new ArrayBuffer(byteString.length);
// const ia = new Uint8Array(ab);
// for (let i = 0; i < byteString.length; i++) {
// ia[i] = byteString.charCodeAt(i);
// }
//
// const blob = new Blob([ab], { type: 'image/jpeg' });
//
// // 创建一个a标签用于下载
// const a = document.createElement('a');
// a.style.display = 'none';
// a.href = URL.createObjectURL(blob);
// a.download = 'image.jpeg'; // 设置下载的文件名
// document.body.appendChild(a);
// a.click();
//
// // 释放Blob URL
// URL.revokeObjectURL(a.href);
//
// // 清理a标签
// document.body.removeChild(a);
}
vue3图片下载
qq_459131702024-09-05 22:38
相关推荐
古夕几秒前
Promise 解决过程(Promise Resolution Procedure)详解spionbo几秒前
Vue 自定义进度条实现方法与应用场景解析中微子1 分钟前
一起来学习React哲学,理解数据驱动的现代框架梨子同志3 分钟前
ES6~ES13 新特性Cache技术分享9 分钟前
99. Java 继承(Inheritance)SleepyZone18 分钟前
Cline 源码浅析 - 从输入到输出Bruce_Liuxiaowei21 分钟前
PHP文件包含漏洞详解:原理、利用与防御Struggler28121 分钟前
pinia-基于monorepo的项目结构管理Struggler28125 分钟前
SSE的使用泽020230 分钟前
C++之STL--list