JS 文件导出,jszip多文件压缩导出

发布时间:2024年01月05日

JS 文件导出,jszip压缩导出

1、单个文件导出

let url='http://~.png' // 可直接访问地址
// 当源数据为blob时
// url = window.URL.createObjectURL(blob);
let fileName = '文件名.png'
let a = document.createElement("a"); // 创建a标签
a.setAttribute("download", fileName); // download属性
a.setAttribute("href", url); // href链接
a.click();

2、压缩导出

安装jszip

yarn add jszip
// blob源数据
const zip = new JSZip();
// zip.file("Hello.txt", "Hello World\n"); // 支持纯文本等
// let folder = zip.folder("folderName"); // 创建folder文件夹
// folder.file("Hello.txt", "Hello World\n"); // 向文件夹写入文件
// 直接写入文件
zip.file('文件名', 'blob.data');
// 压缩导出
zip.generateAsync({ type: "blob" }).then(blob => {
    const url = window.URL.createObjectURL(blob);
    a.setAttribute("download", '压缩包.zip'); // download属性
    a.setAttribute("href", url); // href链接
    a.click();
});

3、axios请求通过地址获取Blob源数据

await axios.get('http://~.png', { responseType: 'blob' }).then(xx => {
     console.log(xx.data)
})
文章来源:https://blog.csdn.net/weixin_44167504/article/details/135404374
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。