1、引入插件
安装JSZipUtils
npm i jszip-utils -S
安装JSZip
npm i jszip -S
2、组件内引入
import JSZipUtils from 'jszip-utils'
import JSZip from 'jszip'
3、实现方法
let zip = new JSZip()
new JSZip.externel.Promise(functon(resolve, reject) {
JSZipUtils.getBinaryContent('getZipUrl', function(err, data) {
if(err) {
reject(err)
} else {
resolve(data)
}
})
}).then(function() {
return JSZip.loadAsync(data)
}).then(function(zip) {
const fileName = Object.keys(Object.values(zip)[0])[0] // 获取文件名
return zip.file(fileName).async("string").then(function(data) {
const datas = JSON.parse(data) // 与后端约定压缩包内只有一个文件且为JSON格式,更多格式可参考JSZip官网
})
})