我使用Angular Material表(mat-table)和分页器(mat-paginator)来渲染大表。我想将整个表格(所有页面)导出为CSV。我可以将当前页面导出为CSV,但不能一次导出所有页面。
我不能只是从数据源中导出数据,因为模板使用管道和其他格式,因此我需要导出以具有相同的格式。
一个选项是,当用户点击导出时,它将禁用分页,运行导出代码,然后在正确设置当前页面的情况下重新启用分页。但是用户会看到屏幕发生变化,浏览器可能需要一些时间才能在屏幕上完全呈现整个大表。在Angular中,有没有一种更有效的方法可以在内存或屏幕外重新生成该表组件,从而使用户不会注意到表发生了更改?
答案 0 :(得分:0)
mat-table-exporter可以是导出物料表外观的一种解决方案。目前,它仅导出为xls或xlsx,但很快就会提供csv支持。
它将导出所有表格以及数据在屏幕中的呈现方式。但是,应该将大型表导出在后端进行。