He descargado un archivo a través de algunas opciones, usando Filesaver o [a]Download, pero solo con la extensión xlsx. Cuando trato de descargarlo como .pdf, el archivo se descarga, pero se corrompe y no puedo verlo, mientras que el archivo de Excel está bien. El libro de Excel se crea utilizando Excel Js.
El fragmento de código que representa el problema se encuentra a continuación.
private exportExcel(workbook: any, filename: string) { workbook.xlsx.writeBuffer().then((data) => { console.log(data); let blob = new Blob([data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' }); const anchor = document.createElement('a'); const url = URL.createObjectURL(blob); anchor.href = url; anchor.download = filename; document.body.appendChild(anchor); anchor.click(); document.body.removeChild(anchor); URL.revokeObjectURL(url); const urlpdf = URL.createObjectURL(new Blob([data], {type: "application/pdf"})); fetch(urlpdf).then(res => res.blob()).then(blob => { const data = URL.createObjectURL(blob); const a = document.createElement('a'); a.href = data; a.download = 'file'; document.body.appendChild(a); a.click(); document.body.removeChild(a); URL.revokeObjectURL(data); }) }).catch(err => console.log(err)) }Lo intenté usando fetch, no usando blob (entonces aparece un error), pero ninguna de las opciones exporta un .pdf válido. Gracias por adelantado.
Estoy usando marco angular