1.安装JSZipUtils
2.引用
import JSZipUtils from 'jszip-utils'
3.使用
/**
* 获取远程zip文件转化成json
* @param url 远程文件地址
* @returns
*/
function getRomoteZipFile(zipUrl) {
return new Promise((resolve, reject) => {
JSZipUtils.getBinaryContent(zipUrl, function (err, data) {
if (err) {
reject(err)
} else {
JSZip.loadAsync(data).then(function (zip) {
const fileName = Object.keys(Object.values(zip)[0])[0] // 获取文件名
zip
.file(fileName)
.async('string')
.then(function (data) {
const datas = JSON.parse(data) // 与后端约定压缩包内只有一个文件且为JSON格式,更多格式可参考JSZip官网
resolve({
code: 0,
data: datas,
msg: '成功'
})
})
})
}
})
})
}
欢迎补充,一起进步。