You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在KendoReact(TypeScript)中导出带标题的Grid到PDF?

解决Data Grid导出PDF时标题不显示的问题

问题核心在于你调用 save(gridData) 时,GridPDFExport 会直接基于传入的数据生成表格,完全忽略组件内部的自定义标题和子元素内容。要让标题显示,调整两个关键地方即可:

1. 修改导出方法,移除save的参数

不要传入 gridData,直接调用无参的 save(),这样组件会以内部渲染的完整内容(标题+表格)生成PDF。

修改后的导出代码:

const exportToPDF = () => {
  if (gridPDFExport) {
    gridPDFExport.save(); // 去掉gridData参数
  }
}

2. 优化GridPDFExport内的标题样式(可选)

你原有的组件结构没问题,可给标题加居中样式让PDF排版更规整:

<div>
  {grid}
  <GridPDFExport 
    landscape={true}
    repeatHeaders={true} 
    paperSize='A4' 
    scale={0.5} 
    ref={pdfExport => gridPDFExport = pdfExport} 
    margin='1cm'
  >
    <div style={{ textAlign: 'center', marginBottom: '20px' }}>
      <h1>STUDENTS DEPARTMENT TABLE</h1>
      <h3>DEPARTMENT OF ENGINEERING, 2023</h3>
    </div>
    {grid}
  </GridPDFExport>
</div>

原理说明

当你给 save() 传入数据时,GridPDFExport 会进入「数据导出模式」,直接用传入的数据生成表格,跳过渲染子组件;而无参调用时,组件会将内部所有渲染的DOM元素(包括标题和表格)一起转换成PDF,标题自然就能显示在顶部了。

内容的提问来源于stack exchange,提问作者Olabisi Olaoye

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.26 02:57:10