您好,登錄后才能下訂單哦!
這篇文章主要講解了“如何使用JSZip實現壓縮文件與圖片”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何使用JSZip實現壓縮文件與圖片”吧!
JSZip是一個用于創建、讀取和編輯.zip文件的javascript庫,有一個可愛而簡單的API。JSZip支持Nodejs和瀏覽器端的安裝使用。具體方法如下:
npm install jszipnpm install file-saver
后端Nodejs將zip文件以二進制形式存儲到數據庫中。當前端需要該zip文件時,后端將zip文件以二進制形式傳輸到前端,前端再解壓還原。
import JSZip from 'jszip';
import FileSaver from 'file-saver';
var zip = new JSZip();
//創建hello.txt文件,文件內容為Hello World
zip.file("hello.txt", "Hello World\n");
//創建一個nested文件夾,文件里里創建一個hello.txt文件,文件內容為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"); //通過刪除文件夾,也刪除其內容。
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數據','base64數據'] */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}); // 導出json let jsonNames = `${myNotesName}${getTime()}(${i + 1}).json`; zip.file(jsonNames, 'json文本數據');}// 下載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實現壓縮文件與圖片”的內容了,經過本文的學習后,相信大家對如何使用JSZip實現壓縮文件與圖片這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。