流星jsPDF包错误

Meteor jsPDF Package Error

本文关键字:错误 jsPDF 包错误 流星      更新时间:2023-09-26

我添加了js-pdf包到我的流星应用程序,但每当我运行一个简单的hello world代码,我得到一个错误:

代码:

var doc = new jsPDF();
doc.setFontSize(40);
doc.text(35, 25, "Paranyan loves jsPDF");

:

[Error] ReferenceError: Can't find variable: jsPDF
click #download-pdf (manageatas.js, line 53)
(anonymous function) (templating.js, line 120)
(anonymous function) (blaze.js, line 2205)
withCurrentView (blaze.js, line 2038)
(anonymous function) (blaze.js, line 2204)
(anonymous function) (blaze.js, line 802)
dispatch (jquery.js, line 4657)
handle (jquery.js, line 4325)

我尝试安装包,我尝试下载代码并将其添加到客户端文件夹,但我再次得到相同的错误…

我也遇到了很多问题。

试着把jspdf.debug.js在你的代码某处(我有我的客户端/第三方/),摆脱var从var jsPDF =(函数(全局),并给它一个这样的镜头。

确保先删除包和其他jspdf - js文件!

该包似乎与最近的Meteor版本不兼容(这很奇怪,因为它似乎接收更新)。我建议手动添加jspdf.js到你的/client/lib/compatibility文件夹。

如果你不想使用compatibility文件夹,你需要确保jsPDF对象是在全局范围内创建的,而不是作为文件中的局部变量。幸运的是,这很容易——只需从它的声明中删除var关键字。换句话说,第39行应该是:

jsPDF = (function () {
不是

var jsPDF = (function () {

使用HTML - PDF NPM包创建动态HTML到PDF文件。

很容易使用

步骤:

  1. 创建报告布局设计的html文件
  2. 通过SRS模板方法传递json格式的动态数据,获取html代码。
  3. 在以下函数中传递html代码
代码:

var fs = require('fs');
var pdf = require('html-pdf');
var options = { format: 'Letter' };
pdf.create(html, options).toFile('./businesscard.pdf`enter code here`', function(err, res) {
  if (err) return console.log(err);
  console.log(res); // { filename: '/app/businesscard.pdf' } 
});

其中html代表html代码。

访问https://www.npmjs.com/package/html-pdf