我在Angular应用上使用JSPdf,我试图使用JS自动插件,但我遇到了JS错误
EXCEPTION:Uncaught(在promise中):TypeError:doc.autoTable不是函数
TypeError:doc.autoTable不是函数
我通过npm安装了jspdf和jspdf-autotable,我确认它们在节点模块中。
我以这种方式导入了两个插件:
import * as jsPDF from 'jspdf'
import * as autoTable from 'jspdf-autotable'
这是我的代码:
private renderPdf():void{
let testcolumns = ["TestCol1", "TestCol2"];
let testrows = [["test item 1", "test item 2"]];
let doc = new jsPDF();
doc.autoTable(testcolumns, testrows);
doc.save('sample.pdf');
}
我可以在这里找到什么或者我可以提供更多代码来帮助确定问题吗?
谢谢!
答案 0 :(得分:12)
答案 1 :(得分:0)
我在使用https://github.com/SimulatedGREG/electron-vue时遇到了同样的问题。我通过将'jspdf'和'jspdf-autotable'添加到path-to-project / .vscode中的白名单数组来解决它
let whiteListedModules = [
'vue',
'vue-sweetalert2',
'element-ui',
'vue-avatar-component',
'vue-router',
'vue-json-excel',
'vuex',
'vue-chart-js',
'pluralize',
'Print',
'jspdf',
"jspdf-autotable"
]
答案 2 :(得分:0)
您可以将jsPDF导入为通常导入的格式:
import jsPDF from 'jspdf';
然后是autoTable:
require('jspdf-autotable');
将此^添加到函数中