浏览器端读取和生成zip文件
demo-file
示例文件名:gateway.db
格式:zip
示例文件内容:
{
"test": "hello world"
}
依赖
npm install --save file-saver
npm install jszip
code
import JSZip from 'jszip';
import {saveAs} from 'file-saver';
JSZip.loadAsync(file)
.then(zip => {
zip.file('gateway.db').async('string').then(data => {
/*
{
test: "hello world"
}
*/
console.log(JSON.parse(data));
//生成新的zip文件并下载
let new_zip = new JSZip();
new_zip.file('gateway.db', data);
new_zip.generateAsync({type: 'blob'}).then(content => {
//内容 + 文件名
saveAs(content, 'gateway.db');
});
});
});
reference
行为影响状态,状态影响视图