问题描述
我从后端收到一个字符串作为响应,其中包含超过 8MB 的 csv 内容。
使用此代码:
当结果小于 8Mb 时,它会创建整个文件,但当它大于 8Mb 时,它会将一半数据保存到文件中,我会丢失数据。 (我可以通过浏览器调试看到大小)
我尝试了 angular-file-saver 但我仍然遇到错误,在 AngularJS 中依赖注入对我不起作用。
我尝试使用内容创建 Blob 对象,结果相同。
请帮忙。谢谢。
解决方法
试试这个,对我有用:
myService.getCsvExportContent(vm.searchParams).then(function (content) {
var link = document.createElement("a");
var blob = new Blob([content],{type: 'text/csv;charset=utf-8;'});
var url = URL.createObjectURL(blob);
link.href = url;
link.setAttribute("download","MCsExport.csv");
link.click();
});
,
谢谢你的帮助。最后注入 ngFileSaver 对我有用。 bower cache clean
然后 bower install angular-file-saver --save-dev
和我注入的对象被识别。
所以 FileSaver.saveAs(blob,"filePath.csv")
工作得很好。
var blob = new Blob([content],{type: 'text/csv;charset=utf-8'});
FileSaver.saveAs(blob,"Export.csv");