【问题标题】:PdfMake getBase64 undefined - React JSPdfMake getBase64 undefined - React JS
【发布时间】:2021-10-27 03:52:35
【问题描述】:

我创建了一个正在使用的函数生成的 pdf

   const pdfDocGenerator = pdfMake.createPdf(docDefinition);
    pdfDocGenerator.getBase64((pdfData) => {
      resolve({
        pdfData: `data:application/pdf;base64,${pdfData}`,
        onlyData: pdfData,
      });
    });

代码 pdfDocGenerator.getBase64 表示其未定义但 pdfDocGenerator 具有值。

我的 pdfDocGenerator 控制台。

有人可以帮助我在 generatepdf 文件中使用新的 promise,并且有一个索引文件调用了 generatedpdf

添加信息

如果我想创建 pdf 并打开仍然无法空白,该怎么办

代码重现:https://stackblitz.com/edit/react-gw7c3h?file=src%2FApp.js

【问题讨论】:

  • createPdf 看起来像什么?它需要等待吗?
  • 我怀疑 docDefinition 对象是否有问题 - 也许它不包含 createPdf 预期的数据?您可以尝试pdfmake.org/playground.html# 首先测试此示例中给出的简单代码pdfmake.github.io/docs/0.1/getting-started/client-side/methods/…(使用示例 docDefinition),然后替换为您的 docDefinition(另外,您可以粘贴 docDefinition 的文本/JSON 字符串而不是图像(无法从图像中复制)
  • 嗨@gawkface我编辑信息,我可以发送所有的json文件,因为这是长内容,但我尝试你的建议仍然有问题,我尝试打开创建的pdf而不做基础64 仍然有问题。
  • 我尝试使用 pdfmake.org/playground.html# 的内容,我的数据是正确的。将尝试创建一个 gist.github.com

标签: javascript reactjs pdfmake


【解决方案1】:

我通过检查console.logs错误解决了这个问题,你可以检查我的情况是什么内容问题我只是导入

import pdfFonts from "pdfmake/build/vfs_fonts";
pdfMake.vfs = pdfFonts.pdfMake.vfs;

【讨论】:

  • 我也一直看到 Roboto 字体错误,这就是为什么在我的 gist/playground 中你会看到我也包含了它;但是当你说你没有看到任何控制台错误时,我认为问题一定是不同的。无论如何,你终于解决了它真是太好了,你坚持了这么久做得很好!您可以将自己的答案标记为“已接受的解决方案”!
  • 也感谢@gawkface 完成解决方案.. 干杯!
猜你喜欢
  • 2018-04-19
  • 1970-01-01
  • 2018-05-17
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-17
  • 1970-01-01
  • 2015-10-15
相关资源
最近更新 更多