我一直在使用angularjs.datatables并希望能够导出到excel / pdf。 angularjs-datatables项目确实包含对TableTools扩展的支持,但是当我在datatables站点上读取时,TableTools已经退役,我们应该使用Buttons来实现此目的。我似乎找不到任何关于在任何地方使用角度的新扩展的参考。如果有人能指出我如何使用它,我将非常感激。如果无法使用按钮,请使用TableTools分享您的体验。我的目标是使用自定义列打印并导出到excel / pdf(在视图和导出之间以不同方式呈现)
感谢。
答案 0 :(得分:0)
您必须添加所需的js
文件:angular-datatables.buttons.min.js
并且
将依赖关系datatables.buttons添加到Angular应用程序
HTML:
<div ng-controller="WithButtonsCtrl as showCase">
<table datatable=""
dt-options="showCase.dtOptions"
dt-columns="showCase.dtColumns"
class="row-border hover">
</table>
</div>
JS:
angular.module('showcase.withButtons', ['datatables', 'datatables.buttons'])
.controller('WithButtonsCtrl', WithButtonsCtrl);
function WithButtonsCtrl(DTOptionsBuilder) {
var vm = this;
vm.dtOptions = DTOptionsBuilder.fromSource('data.json')
.withDOM('frtip')
.withPaginationType('full_numbers')
// Active Buttons extension
.withButtons([
'columnsToggle',
'colvis',
'copy',
'print',
'excel',
{
text: 'Some button',
key: '1',
action: function (e, dt, node, config) {
alert('Button activated');
}
}
]);
}
参考: https://l-lin.github.io/angular-datatables/#/withButtons
答案 1 :(得分:0)
试试这些CDN:
表示Excel和CSV使用此CDN
https://cdn.datatables.net/buttons/1.5.1/js/buttons.html5.min.js
https://cdnjs.cloudflare.com/ajax/libs/jszip/3.1.3/jszip.min.js
for PDF使用此CDN
https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.32/pdfmake.min.js
https://cdnjs.cloudflare.com/ajax/libs/pdfmake/0.1.32/vfs_fonts.js