我正在使用UI-Grid在我的角度应用程序上创建网格视图。 UI-Grid提供将过滤的和完整的网格数据导出为csv或pdf格式。但我需要将数据导出到excel中。
我使用早期的Alasql导出网格数据但是我使用ng-repeat来生成网格。
这里的Ui-grid指令负责生成网格,并且通过使用UI-Grid指令公开的简单方法,我们可以导出数据。只是想知道是否有人尝试将数据导出到excel中。
不共享代码,因为我使用的是与UI-Grid教程相同的代码,并且它为我工作,只是我需要在excel文件中导出。
答案 0 :(得分:2)
我也在使用ui-grid的应用程序中工作,将数据导出到xlsx我曾经使用过像这样的alasql:
$scope.exportXLS = function exportXLS() {
alasql.promise('SELECT * INTO XLSX("data.xlsx",{headers:true}) FROM ?',[$scope.gridOptions.data])
.then(function(data){
console.log('Data saved as XLSX');
}).catch(function(err){
console.log('Error:', err);
});
};
并且只导出过滤后的数据我使用gridApi得到它,如下所示:
$scope.filteredData =$scope.gridApi.core.getVisibleRows($scope.gridApi.grid);
然后将实体字段从返回数组中的每个对象映射到新数组 ,我是使用下划线库中的map函数完成的。
entities = _.map($scope.filteredData, 'entity');
最后替换' $ scope.gridOptions.data'与'实体'在上面的功能。