首页 > 解决方案 > 在 Angular 通用服务器端使用 jsPDF 创建 PDF

问题描述

我们有一个带有分页数据网格的角度组件。我们将在应用程序中引入 PDF 格式的下载功能。在此功能中,可以在数据网格上通过分页查看的整个数据将在 PDF 中提供。由于数据可能很大(数千行),我们考虑使用 Angular Universal 来使用现有组件并使用 jsPDF 获取 PDF。但是我找不到任何可以在服务器端渲染和使用组件来生成 PDF 的示例。我想利用 express 来公开一个 API 端点,该端点将获取组件并在服务器端使用数据呈现它,并且可以生成使用 jsPDF 文件。

任何代码片段示例都会有所帮助。

标签: apiexpresspdfjspdfangular-universal

解决方案


Angular Universal 中的服务器端无法渲染或调用应用程序中的任何组件,它仅适用于 index.html。

如果我理解你的问题,简要地说你想从 Angular 应用程序下载 pdf 文件中的数据,但你需要 pdf 中的组件样式

  • 如果您将转换屏幕上显示的唯一数据部分,您可以使用任何PDF 包来获取jspdf等 Angular

  • 如果您需要转换所有数据(数千行),请以角度构建服务以凝胶所有数据并以相同样式呈现视图而无需分页并将其转换为 pdf

  • (服务器端)发出请求以获取服务器文件 server.ts 中的所有数据(表达 js 代码)并使用 pdf 包进行渲染,然后在 anular 应用程序中将请求作为 api 调用以开始下载 pdf 文件


推荐阅读