如何让 jsPDF 在我的 Ember 应用程序中可访问?

How do I make jsPDF accessible in my Ember app?

我想在 Ember 应用程序中使用 jsPDF 导出 PDF 文档,但我不知道如何在应用程序中使用该库。

到目前为止,我已经使用 bower 安装了库:

bower.json

{
  "name": "myApp",
  "dependencies": {
    ...
    "jspdf": "~1.2.61"
  }
}

...并将其导入到 ember-cli-build.js 文件中:

ember-cli-build.js

...
app.import(app.bowerDirectory + '/jspdf/dist/jspdf.min.js');
...

但是,当我尝试使用它时(通过在 Ember 操作中调用 var doc = new jsPDF()),我得到了这个:

ReferenceError: jsPDF is not defined

我错过了什么?

在此处添加您的 Bower 组件:

module.exports = function(defaults) {
....
  app.import(app.bowerDirectory + '/jspdf/dist/jspdf.min.js'); // Your file
....
};

尝试将您的代码更改为:

  actions:{
      createPDF: function() {

       var doc = new jsPDF(); // This part is your mistake 
       doc.text(20, 20, 'Hello world.');
       doc.save('Test.pdf');

     }
}

一样为您的按钮调用您的操作
<button type="button" {{action "createPDF"}}>Create PDF</button>

然后停止您的 Ember 服务然后再次启动它

Ember serve

那行得通。当你向 ember-cli-build.js 添加内容时,你必须停止并重新开始你的服务。

另请参阅此文档以获取更多信息:https://guides.emberjs.com/v2.7.0/addons-and-dependencies/managing-dependencies/