js 本地保存 json为txt 文件,导入txt文件

1,863 阅读1分钟
download = (filename) => {
    const data = {
        a: 11,
        b: [{ a: 1, b: 3 }]
    };
    let pom = document.createElement('a');
    pom.setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(JSON.stringify(data)));
    pom.setAttribute('download', filename);
    if (document.createEvent) {
        let event = document.createEvent('MouseEvents');
        event.initEvent('click', true, true);
        pom.dispatchEvent(event);
    } else {
        pom.click();
    }
};

transformFile = (file) => {
    return new Promise(resolve => {
    	const malls = MallUtils.getSecurityInfos();
    	const reader = new FileReader();
    	reader.readAsDataURL(file);
    	reader.onload = () => {
        	console.dir(reader.result)
        	let result = Base64.decode(_.split(reader.result, ',')[1]);
        	console.dir(result);
    	};
    });
};


<Button type="primary"
	onClick={() => this.download('data.txt')}>
    下载文件
</Button>
<Upload accept=".txt"
	showUploadList={false}
	name="file"
	transformFile={this.transformFile}>
    <Button type="primary">导入文件</Button>
</Upload>

reader.result数据如下图:

result数据如下图:

下载文件来源链接:www.cnblogs.com/recode-hyh/…

导入文件来源链接:cloud.tencent.com/developer/a…