Daw*_*n17 4 javascript json reactjs
我有一个包含一些信息的javascript对象。我想将其转换为JSON并将其下载为.json文件。似乎我只能JSON.stringify(obj)将其转换为JSON,但实际上如何将其下载为.json文件?
如果您只是想通过JavaScript下载数据,我不确定这是一个特定于React的问题,但是我使用的以下代码段创建了一个链接来下载数据内容,实际上是单击该元素,最后将其从中删除DOM。它应同时支持现代浏览器和较旧的IE:
private exportToJson(objectData: SomeObject) {
let filename = "export.json";
let contentType = "application/json;charset=utf-8;";
if (window.navigator && window.navigator.msSaveOrOpenBlob) {
var blob = new Blob([decodeURIComponent(encodeURI(JSON.stringify(objectData)))], { type: contentType });
navigator.msSaveOrOpenBlob(blob, filename);
} else {
var a = document.createElement('a');
a.download = filename;
a.href = 'data:' + contentType + ',' + encodeURIComponent(JSON.stringify(objectData));
a.target = '_blank';
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
}
}
Run Code Online (Sandbox Code Playgroud)
小智 7
对于到达这里并寻找更简单解决方案的人:
<a
href={`data:text/json;charset=utf-8,${encodeURIComponent(
JSON.stringify(YOURJSON)
)}`}
download="filename.json"
>
{`Download Json`}
</a>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3918 次 |
| 最近记录: |