jspdf вызывает сбой браузера при конвертации большого объекта json в pdf - PullRequest
0 голосов
/ 27 сентября 2019

jsPdf вызывает сбой браузера при преобразовании большого объекта json в pdf

exportPdf(){
 var bulletinReportPdf = new jsPDF('landscape');
 var columns = ['Number', 'Type', 'Status', 'Subdivision', 'From Mp', 'To Mp', 'Frt MPH', 'Psg MPH', 'Track', 'From Date/Time', 'To Date/Time', 'Summary'];
 var results = []; //results may getting upto 80K
 var fileName = '';
 const removeEmpty = obj => {
   Object.keys(obj).forEach(key => {
     if (obj[key] && typeof obj[key] === "object") removeEmpty(obj[key]); // recurse
     else if (obj[key] == null) delete obj[key]; // delete
   });
 };



 removeEmpty(this.bulletinSearchResults)
 this.bulletinSearchResults.forEach(item => {
   var temp = [item.number, item.type, item.status, item.subDivision, item.fromMilePost, item.toMilePost, item.freightSpeed, item.passengerSpeed,
   item.track, item.fromDateTime, item.toDateTime, item.summary];
   results.push(temp);
 });
 bulletinReportPdf.autoTable(columns, results, {
   html: '#table',
   columnStyles: {
     0: {columnWidth: 15},
     1: {columnWidth: 15},
     2: {columnWidth: 15},
     3: {columnWidth: 30},
     4: {columnWidth: 20},
     5: {columnWidth: 20},
     6: {columnWidth: 20},
     7: {columnWidth: 20},
     8: {columnWidth: 20},
     9: {columnWidth: 35},
     10: {columnWidth: 35},
     11: {columnWidth: 30},
   }
 });

 for(var formName in this.selectedFormType){
   fileName += this.selectedFormType[formName]
 }

 bulletinReportPdf.save(fileName+'-'+'bulletin-authorities.pdf');
}

Даже у объекта json есть результаты 80k, и они должны быть преобразованы в pdf.но в этом случае браузер зависает, и приложение не отвечает

Пожалуйста, предоставьте решение, и я был бы признателен за это!

...