J'utilise JSPdf sur une application Angular et j'essaie d'utiliser le plug-in JS autotable, mais je rencontre l'erreur JS.
EXCEPTION: Non capturé (promis): TypeError: doc.autoTable n'est pas une fonction
TypeError: doc.autoTable n'est pas une fonction
J'ai jspdf et jspdf-autotable installés via npm, j'ai confirmé leur présence dans les modules de nœud.
J'ai importé les deux plugins de cette façon:
import * as jsPDF from 'jspdf'
import * as autoTable from 'jspdf-autotable'
et voici mon code:
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');
}
Y a-t-il quelque chose qui pourrait me manquer ici ou plus de code que je pourrais fournir pour aider à résoudre le problème?
Merci!
Supprimez simplement les 2 premières lignes des importations et ajoutez les lignes suivantes:
var jsPDF = require('jspdf');
require('jspdf-autotable');
Vous pouvez voir un exemple ici
j'ai eu le même problème aujourd'hui en utilisant https://github.com/SimulatedGREG/electron-vue . je l'ai résolu en ajoutant 'jspdf' et 'jspdf-autotable' au tableau de liste blanche dans 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"
]