Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

157
Visualizações
¿Cómo puedo exportar un objeto JSON a Excel usando Nextjs/React?

Tengo un punto final que recupera un objeto json como el siguiente:

 "data": [ { "id": 1, "temaIndicador": "Indian", "codigo": "001", "observaciones": "Interactions Specialist tertiary Regional Tennessee", "activo": "SI", "urlImagen": "http://placeimg.com/640/480", "color": "cyan", "createdAt": "2022-01-26T18:48:36.002Z" ]

Y quiero implementar un botón que permita al usuario exportar los datos a múltiples formatos, incluido Excel (.xlsx), pero realmente no sé por dónde empezar. Ya he visto bibliotecas que se dan cuenta de esto, pero no me siento cómodo porque normalmente tienen menos de 1,500 descargas por semana.

Mi propósito es exportar un documento de Excel con una tabla simple donde los encabezados serán los atributos de los objetos.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Use la biblioteca de terceros xlsx.

 npm install xlsx

Usando la biblioteca:

 import XLSX from "xlsx";

Desencadenar la función de descarga al hacer clic en el botón (pasar datos como argumento):

 downloadExcel = (data) => { const worksheet = XLSX.utils.json_to_sheet(data); const workbook = XLSX.utils.book_new(); XLSX.utils.book_append_sheet(workbook, worksheet, "Sheet1"); //let buffer = XLSX.write(workbook, { bookType: "xlsx", type: "buffer" }); //XLSX.write(workbook, { bookType: "xlsx", type: "binary" }); XLSX.writeFile(workbook, "DataSheet.xlsx"); };

Botón de descarga: (llamada de función: debe modificarlo según sus requisitos, debajo de uno está la implementación del componente de clase React, es por eso que usé this )

 <button onClick={()=>this.downloadExcel(data)}> Download As Excel </button>
about 4 years ago · Juan Pablo Isaza Relatório

0

Según la respuesta aceptada, en caso de que alguien reciba el error "Intento de error de importación: 'xlsx' no contiene una exportación predeterminada (importado como 'XLSX')", intente importar usando lo siguiente:

 import * as XLSX from 'xlsx';

Espero eso ayude.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda