如何导出带有分页的Angular Material表(mat-table)?

时间:2018-09-30 04:43:48

标签: angular angular-material2

我使用Angular Material表(mat-table)和分页器(mat-paginator)来渲染大表。我想将整个表格(所有页面)导出为CSV。我可以将当​​前页面导出为CSV,但不能一次导出所有页面。

我不能只是从数据源中导出数据,因为模板使用管道和其他格式,因此我需要导出以具有相同的格式。

一个选项是,当用户点击导出时,它将禁用分页,运行导出代码,然后在正确设置当前页面的情况下重新启用分页。但是用户会看到屏幕发生变化,浏览器可能需要一些时间才能在屏幕上完全呈现整个大表。在Angular中,有没有一种更有效的方法可以在内存或屏幕外重新生成该表组件,从而使用户不会注意到表发生了更改?

1 个答案:

答案 0 :(得分:0)

mat-table-exporter可以是导出物料表外观的一种解决方案。目前,它仅导出为xls或xlsx,但很快就会提供csv支持。

它将导出所有表格以及数据在屏幕中的呈现方式。但是,应该将大型表导出在后端进行。