Я пытался экспортировать данные в Excel, CSV, PDF с использованием datatable из datatables.net. Мой код отлично работает для позиций, скажем, 100. Но когда данные увеличиваются до 20000 или около того, он просто загружает данные и говорит «В таблице нет данных» внизу. Экспорт в Excel, CSV или PDF дает пустую таблицу. Чтобы это работало, мне нужно увеличить таймер до 9000. Как я могу сделать это без использования таймера? Мой код -
private myDataTable: any;
приватный столWidget: любой;
public loadData(): void {
let tableOptions: any = {
destroy: true,
searching: false,
dom: 'Bfrtip',
processing: true,
buttons: [
{
extend: 'excelHtml5',
exportOptions: {
columns: [0,1,2,3,4,5]
}
},
{
extend: 'csvHtml5',
exportOptions: {
columns: [0,1,2,3,4,5]
}
},
{
extend: 'pdfHtml5',
exportOptions: {
columns: [0,1,2,3,4,5]
}
},
]
}
try {
setTimeout(function () {
var oldJq = $.noConflict();
this.myDataTable = $('.atttbl1');
this.tableWidget = this.myDataTable.DataTable(tableOptions);
$ = oldJq;
}, 9000)
}catch(e) {
alert(e);
}
}