打包為壓縮包同時(shí)下載

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保存文件
      });
    });
}
?著作權(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ù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 創(chuàng)建打包文件(*.tar) # tar cf <tar_file> c:創(chuàng)建f:指定打包文件名稱 解包 # ta...
    古寒飛閱讀 181評(píng)論 0 0
  • 第七講【怎么做】一起走出拖拉磨蹭的泥沼(中) 引子 由于動(dòng)作不熟練引起的拖拉,家長(zhǎng)要清晰過(guò)多的包辦,會(huì)造成孩子缺乏...
    思考世界的孩子閱讀 244評(píng)論 0 0
  • 郵吻 作者:劉大白 我不是不能用指頭兒撕, 我不是不能用剪刀兒剖, 祇是緩緩地 輕輕地 很仔細(xì)地挑開了紫色的信唇;...
    古月General閱讀 283評(píng)論 0 0
  • Python中沒(méi)有數(shù)組,list是一種有序的集合,可以隨時(shí)添加和刪除其中的元素??梢蕴砑硬煌愋偷臄?shù)據(jù)。列表元組用...
    向右奔跑閱讀 1,238評(píng)論 1 0
  • 上午看了一部電影《惡人報(bào)喜》,吳鎮(zhèn)宇,鄭中基主演的,一看片名就知道肯定是部喜劇片,開懷大笑之后卻不禁讓人有一些感...
    豬哥哥閱讀 3,331評(píng)論 2 0

友情鏈接更多精彩內(nèi)容