我正在将laravel 5.7和长生不老药包装用于Webpack。
我很好地添加了Datatables.net,但未显示Excel导出按钮。
这是我的vendor.js
require('datatables.net');
require('datatables.net-bs4');
require('jszip');
require('datatables.net-buttons');
require('datatables.net-buttons/js/buttons.flash.js');
require('datatables.net-buttons/js/buttons.html5.js');
如果我只是将其添加到html
中,则按钮Excel会显示 fine<script src="https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.5/jszip.min.js"></script>
我确认,jszip
的使用不正确。什么是正确的方法?
js控制台中没有错误。
jszip
已很好地下载到node_modules
,就像这样
$ npm install jszip --save-dev
答案 0 :(得分:0)
vendor.js
正常工作:
require('datatables.net');
require('datatables.net-bs4');
window.JSZip = require('jszip');
require('datatables.net-buttons');
require('datatables.net-buttons/js/buttons.flash.js');
require('datatables.net-buttons/js/buttons.html5.js');
答案 1 :(得分:0)
如果您不使用Bootstrap,则应使用此功能:
var table = $('#example').DataTable( {
buttons: [
'copy', 'excel', 'pdf'
] } );
table.buttons().container()
.appendTo( $('<#elementWhereYouNeddToShowThem>', table.table().container() ) );