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
相关推荐
西西学代码2 小时前
Flutter---StreamBuilder案例Lethehong2 小时前
飞算Java:从需求梳理到风险闭环,搭建云盾企业信息安全与权限管理平台爱喝水的鱼丶3 小时前
SAP-ABAP:ALV数据导出增强——实现Excel/PDF/CSV多格式自定义导出Mortalbreeze3 小时前
深入理解 Linux 线程机制(四):线程同步——条件变量与信号量不会c+3 小时前
C语言:入门到精通(408考研版)系列七 派生的数据类型用户69371750013843 小时前
Kimi K3 综合能力处于全球第一梯队anno3 小时前
Agent 新手 Skill 优先级指南:从第一套必装工作流,到专业能力补全Liora_Yvonne3 小时前
前端请求层到底怎么封?为什么全局 axios 单例越用越难维护anno3 小时前
别再把文档“一刀切”:用 LangChain.js 做好 RAG 的第一公里皮卡穆3 小时前
React 中使用 react-org-tree 实现组织结构树