這篇文章主要講解了“如何使用JSZip實(shí)現(xiàn)壓縮文件與圖片”,文中的講解內(nèi)容簡單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著小編的思路慢慢深入,一起來研究和學(xué)習(xí)“如何使用JSZip實(shí)現(xiàn)壓縮文件與圖片”吧!
創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比灤平網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式灤平網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋灤平地區(qū)。費(fèi)用合理售后完善,10多年實(shí)體公司更值得信賴。
JSZip是一個(gè)用于創(chuàng)建、讀取和編輯.zip文件的javascript庫,有一個(gè)可愛而簡單的API。JSZip支持Nodejs和瀏覽器端的安裝使用。具體方法如下:
npm install jszipnpm install file-saver
后端Nodejs將zip文件以二進(jìn)制形式存儲(chǔ)到數(shù)據(jù)庫中。當(dāng)前端需要該zip文件時(shí),后端將zip文件以二進(jìn)制形式傳輸?shù)角岸?,前端再解壓還原。
import JSZip from 'jszip';
import FileSaver from 'file-saver';
var zip = new JSZip();
//創(chuàng)建hello.txt文件,文件內(nèi)容為Hello World
zip.file("hello.txt", "Hello World\n");
//創(chuàng)建一個(gè)nested文件夾,文件里里創(chuàng)建一個(gè)hello.txt文件,文件內(nèi)容為Hello World
zip.folder("nested").file("hello.txt", "Hello World\n");
zip.generateAsync({type:"blob"}).then(function(content) {
// 使用file-saver保存下載zip文件
FileSaver.saveAs(content, `壓縮包名.zip`);
});
zip.remove("photos"); //通過刪除文件夾,也刪除其內(nèi)容。
import JSZip from 'jszip'let new_zip = new JSZip();new_zip.loadAsync(content).then(function(zip) {new_zip.file("hello.txt").async("string");});
/** * @param dataList ['base64數(shù)據(jù)','base64數(shù)據(jù)'] */function exportJSZipFileSaverEvent (dataList: any) {var zip = new JSZip();var img = zip.folder("images");let myNotesName = 'zip名稱';for (let i = 0; i < dataList.length; i++) { //過濾base64格式 let image = dataList[i].replace(/^data:image\/(png|jpg|jpeg);base64,/, ""); let imageNames = `${myNotesName}${getTime()}(${i + 1}).png`; img?.file(imageNames, image, {base64: true}); // 導(dǎo)出json let jsonNames = `${myNotesName}${getTime()}(${i + 1}).json`; zip.file(jsonNames, 'json文本數(shù)據(jù)');}// 下載zip.generateAsync({type: "blob"}).then(function (content) { FileSaver.saveAs(content, `${myNotesName}${getTime()}.zip`);});}function getTime () { let data = new Date(); return data.getFullYear() + "-" + (data.getMonth() + 1) + "-" + data.getDate();}
感謝各位的閱讀,以上就是“如何使用JSZip實(shí)現(xiàn)壓縮文件與圖片”的內(nèi)容了,經(jīng)過本文的學(xué)習(xí)后,相信大家對(duì)如何使用JSZip實(shí)現(xiàn)壓縮文件與圖片這一問題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是創(chuàng)新互聯(lián),小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!