Datatables.net Excel 使用webpack时不显示导出按钮

Datatables.net Excel export button is not displayed when using webpack

我正在使用 laravel 5.7 和用于 webpack 的 elixir 包装器。

我添加 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');

但是按钮 Excel 显示 很好 如果我只是将它添加到我的 html

<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

这是 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');

如果你没有使用 Bootstrap,你应该使用这个:

var table = $('#example').DataTable( {
buttons: [
    'copy', 'excel', 'pdf'
] } );


table.buttons().container()
.appendTo( $('<#elementWhereYouNeddToShowThem>', table.table().container() ) );