jsPDF AutoTable - autoTable 不是函数
jsPDF AutoTable - autoTable is not a function
我在 Angular 应用程序上使用 JSPdf,我正在尝试使用 JS autotable 插件,但我 运行 遇到 JS 错误
EXCEPTION: Uncaught (in promise): TypeError: doc.autoTable is not a function
TypeError: doc.autoTable is not a function
我通过 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');
}
这里有什么我可能遗漏的吗?或者我可以提供更多代码来帮助确定问题吗?
谢谢!
只需删除第一行 imports 并添加以下行:
var jsPDF = require('jspdf');
require('jspdf-autotable');
你可以看一个例子here
我今天在使用 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"
]
我遇到了同样的问题,这个问题对我有用。
我已经把它写成 import as
import * as jsPDF from 'jspdf';
import 'jspdf-autotable';
在函数中我将其声明为
const doc = new jsPDF();
您可以像正常导入一样导入 jsPDF :
import jsPDF from 'jspdf';
然后是自动表:
require('jspdf-autotable');
在函数中添加这个 ^
我遇到了同样的问题,我是这样解决的:
import jsPDF from '../../node_modules/jspdf/dist/jspdf.umd.min.js'
import { applyPlugin } from 'jspdf-autotable'
applyPlugin(jsPDF)
我使用“jspdf”:“^2.3.1”,“jspdf-autotable”:“^3.5.20”
希望对你有帮助!
这对我有用:
import jsPDF from 'jspdf';
require('jspdf-autotable');
const tableColumns = ["column1", "Column2", "Column3"];
const tableRows = [[1,2,3],[a,b,c],[X,Y,Z]];
const doc = new jsPDF();
doc.autoTable(tableColumns, tableRows, { startY: 20 });
doc.text("Closed tickets within the last one month.", 14, 15);
doc.save('dataModel.pdf');
import jsPDF from 'jspdf';
import autoTable from 'jspdf-autotable';
const doc = new jsPDF();
autoTable(doc, { html: '#my-table' });
doc.save('table.pdf');`
这对我有用
我在 Angular 应用程序上使用 JSPdf,我正在尝试使用 JS autotable 插件,但我 运行 遇到 JS 错误
EXCEPTION: Uncaught (in promise): TypeError: doc.autoTable is not a function
TypeError: doc.autoTable is not a function
我通过 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');
}
这里有什么我可能遗漏的吗?或者我可以提供更多代码来帮助确定问题吗?
谢谢!
只需删除第一行 imports 并添加以下行:
var jsPDF = require('jspdf');
require('jspdf-autotable');
你可以看一个例子here
我今天在使用 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"
]
我遇到了同样的问题,这个问题对我有用。 我已经把它写成 import as
import * as jsPDF from 'jspdf';
import 'jspdf-autotable';
在函数中我将其声明为
const doc = new jsPDF();
您可以像正常导入一样导入 jsPDF :
import jsPDF from 'jspdf';
然后是自动表:
require('jspdf-autotable');
在函数中添加这个 ^
我遇到了同样的问题,我是这样解决的:
import jsPDF from '../../node_modules/jspdf/dist/jspdf.umd.min.js'
import { applyPlugin } from 'jspdf-autotable'
applyPlugin(jsPDF)
我使用“jspdf”:“^2.3.1”,“jspdf-autotable”:“^3.5.20” 希望对你有帮助!
这对我有用:
import jsPDF from 'jspdf';
require('jspdf-autotable');
const tableColumns = ["column1", "Column2", "Column3"];
const tableRows = [[1,2,3],[a,b,c],[X,Y,Z]];
const doc = new jsPDF();
doc.autoTable(tableColumns, tableRows, { startY: 20 });
doc.text("Closed tickets within the last one month.", 14, 15);
doc.save('dataModel.pdf');
import jsPDF from 'jspdf';
import autoTable from 'jspdf-autotable';
const doc = new jsPDF();
autoTable(doc, { html: '#my-table' });
doc.save('table.pdf');`
这对我有用