我在Laravel-Vue项目中使用了最新的DataTables-bs4和button-bs4版本(分别为1.10.19和1.5.4),并且未显示导出到excel按钮,CSV和PDF的工作方式为意向
这是我在bootstrap.js文件中导入所有必要依赖项的方式:
import jszip from 'jszip';
import datatable_responsive_bs4 from 'datatables.net-responsive-bs4';
import datatable_buttons_bs4 from 'datatables.net-buttons-bs4';
import datatable_buttons_html5 from 'datatables.net-buttons/js/buttons.html5';
/*
* other code over here
*
*
*/
window.jszip = jszip;
window.datatable_responsive_bs4 = datatable_responsive_bs4;
window.datatable_buttons_bs4 = datatable_buttons_bs4;
window.datatable_buttons_html5 = datatable_buttons_html5;
window.pdfmake = require('pdfmake/build/pdfmake.js');
window.vfs_fonts = require('pdfmake/build/vfs_fonts.js');
window.pdfmake.vfs = window.vfs_fonts.pdfMake.vfs;
这就是我初始化数据表的方式:
$('#table').DataTable({
dom: 'Bfrtip',
responsive: true,
buttons: [
'excelHtml5',
'csvHtml5',
{
extend: 'pdfHtml5',
orientation: 'landscape',
pageSize: 'LEGAL'
}
],
order: [[1, 'desc']]
});
这是我所能获得的最大优势,excel根本没有出现:
我做错了什么,我可以更改以解决该问题?
谢谢。
答案 0 :(得分:1)
<select class="form-control"></select>
答案 1 :(得分:0)
基于以下一项找到了解决方案:NPM Datatable Excel button not showing
它正在改变这一点:
import jszip from 'jszip';
//
window.jszip = jszip;
对此:
import JSZip from 'jszip';
//
window.JSZip = JSZip;
由于某种原因,库需要此确切的变量名才能被识别。