javascript - 将 AngularJS 表导出到 .CSV,指向大约 :blank page?

标签 javascript mysql angularjs node.js excel

我目前有一个 Javascript 函数,它通过 div ID 将我的 AngularJS JSON 数据表导出到一个 .csv 文件,如下所示:

$scope.exportToExcel = function (tableId) { // ex: '#my-table'
    var exportHref = Excel.tableToExcel(tableId, 'WireWorkbenchDataExport');
    $timeout(function () { location.href = exportHref; }, 100); // trigger download
}

我这样称呼

<button style="float: right;" class="btn btn-link" ng-click="exportToExcel('#codeProjectsTable')" filename="test.csv">
     <span class="glyphicon glyphicon-share"></span>
      Export table
</button>

这适用于约 400 条记录或更少(每条记录 20 列)的数据集,但我正试图导出近 1,000 条记录以供进一步报告,我只是被定向到 about:blank 页。

我怀疑是

  1. 无法导出这么大的文件
  2. 由于请求过长而超时

提前致谢。

最佳答案

我使用以下逻辑导出

            var fileName = 'users_export_' + moment().format('YYYY-MM-DD') + '.csv';
            var url = URL.createObjectURL(new Blob([response.data]));
            var a = document.createElement('a');
            a.href = url;
            a.download = fileName;
            a.target = '_blank';
            a.click();

它适用于大型文件/数据

关于javascript - 将 AngularJS 表导出到 .CSV,指向大约 :blank page?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49618180/

相关文章:

javascript - 是否可以使用 AngularJS 验证包含名称为 objectVO.fieldname 的文本字段

javascript - Angular.js - Socket.io 事件更新模型,而不是 View

JavaScript 计时、jQuery fadeIn fadeOut

javascript - 链接到 iOS Safari 的共享菜单

mysql - 回滚失败迁移 : EF Core MySQL

php - 登录后查询另一个表

javascript - 无效的 CORS 请求

javascript - Array.shift 和 JavaScript 中的链表等效项之间的性能差异是什么

javascript - 隐藏/显示位置 :fixed container under non-fixed containers

c# - 桌面应用程序 - 无法连接到任何指定的 MySQL 主机