import JSZip from '../js/lib/jszip.min'
import axios from '../js/lib/axios.min'
import {saveAs} from '../js/lib/FileSaver'
{
let that = this
const fileData = [];
const zip = new JSZip();
const cache = {};
const promises = [];
if(that.transferList.length === 0) {
that.$message({
type: 'warning',
message: '請(qǐng)選擇'
})
return
}
<!--當(dāng)前需要處理的文件-->
this.fileList.forEach(item => {
if(item.picafter !== '') {
fileData.push(item)
}
})
const getFile = url => {
return new Promise((resolve, reject) => {
axios({
method: 'get',
url: url,
responseType: 'arraybuffer'
}).then(data => {
/*返回二進(jìn)制流文件*/
resolve(data.data)
}).catch(error => {
reject(error.toString())
})
})
};
fileData.forEach((item, i) => {
const promise = getFile(item.picafter).then((data) => { // 下載文件, 并存成ArrayBuffer對(duì)象
let file_name = (item.name ? item.name : i) + '.' + item.type; // 獲取文件名
zip.file(file_name, data, {binary: true}); // 逐個(gè)添加文件
cache[file_name] = data
});
promises.push(promise);
});
Promise.all(promises).then(() => {
console.log(promises)
zip.generateAsync({
type: "blob"
}).then(content => {
console.log(content)
that.$message({
message: `下載成功`,
type: "success"
});
// 生成二進(jìn)制流
saveAs(content, "風(fēng)格遷移文件.zip"); // 利用file-saver保存文件
});
});
}
打包為壓縮包同時(shí)下載
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
相關(guān)閱讀更多精彩內(nèi)容
- 第七講【怎么做】一起走出拖拉磨蹭的泥沼(中) 引子 由于動(dòng)作不熟練引起的拖拉,家長(zhǎng)要清晰過(guò)多的包辦,會(huì)造成孩子缺乏...
- 郵吻 作者:劉大白 我不是不能用指頭兒撕, 我不是不能用剪刀兒剖, 祇是緩緩地 輕輕地 很仔細(xì)地挑開了紫色的信唇;...
- Python中沒(méi)有數(shù)組,list是一種有序的集合,可以隨時(shí)添加和刪除其中的元素??梢蕴砑硬煌愋偷臄?shù)據(jù)。列表元組用...