我收到一个错误:没有定义jsPDF,我现在使用以下代码:
import { Component, OnInit, Inject } from '@angular/core';
import 'jspdf';
declare let jsPDF;
@Component({
....
providers: [
{ provide: 'Window', useValue: window }
]
})
export class GenratePdfComponent implements OnInit {
constructor(
@Inject('Window') private window: Window,
) { }
download() {
var doc = jsPDF();
doc.text(20, 20, 'Hello world!');
doc.text(20, 30, 'This is client-side Javascript, pumping out a PDF.');
doc.save('Test.pdf');
}
}
Run Code Online (Sandbox Code Playgroud)
我已经安装了jsPDF的npm,但不知道如何导入jspdf并使用angular-cli运行:1.0.0-beta.17
我的任务是使用 JavaScript 将数据打印成 pdf 文件。所以我为我的任务选择了 jsPdf 并且也成功了。我的任务是将该打印任务转换为 TypeScript 。这里我面临一个新问题,Can't find name jsPdf in TypeScript我不知道原因,因为在我的 JavaScript 中成功运行的代码在使用 TypeScript 运行时无法做到这一点。我花了两天的时间来寻找解决方案,但失败了。参考了很多网站,但没有找到任何解决方案。有人可以帮我解决这个问题吗?
索引.html ,
<script src="common/jspdf.min.js"></script>
<script src="common/jspdf.plugin.autotable.js"></script>Run Code Online (Sandbox Code Playgroud)
我的 Js 文件,
this.print=function(){
{
var columns = [" Data","StepData","CateData","CritiData","CheckyData"];
var rows = [];
for (var i = 0 ; i<Data.length; i++)
{
rows.push([
Data[i],
StepData[i],
CateData[i],
CritiData[i],
CheckyData[i]
]);
};
var pdfsize='b2';
var doc = new jsPDF('p', 'pt',pdfsize);
doc.autoTable(columns, rows, {
theme: 'grid', // 'striped', 'grid' or 'plain'
headerStyles: {
fillColor: [12, 234, …Run Code Online (Sandbox Code Playgroud)