它是关于从选项页面导出扩展数据。
我有一组对象,其中存储了以 base64 编码的页面截图,以及其他一些次要的 obj 属性。我正在尝试使用以下代码导出它们:
exp.onclick = expData;
function expData() {
chrome.storage.local.get('extData', function (result) {
var dataToSave = result.extData;
var strSt = JSON.stringify(dataToSave);
downloadFn('extData.txt', strSt);
});
}
function downloadFn(filename, text) {
var fLink = document.createElement('a');
fLink .setAttribute('href', 'data:text/plain;charset=utf-8,' + encodeURIComponent(text));
fLink .setAttribute('download', filename);
fLink .click();
}
单击按钮时,从存储中获取数据,对其进行字符串化,创建假链接,设置属性并单击它。
如果生成的文件低于 ~1.7 MB,则代码可以正常工作,但上面的所有内容都会产生崩溃的选项页面,并且扩展名会被禁用。无论大小如何,我都可以正常工作,如果我不将其传递给下载功能。我
可以
做些什么来修复代码并避免崩溃?...或者大小有什么限制吗?使用这种方法?console.log(strSt)
JSON.stringify