Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

508
Vistas
¿Cómo puedo convertir un archivo .docx desde un servidor con mammoth?

Acabo de instalar mammoth.browser.min (v. 1.2.0) y, usando una etiqueta HTML como se muestra en los documentos, lo probé con éxito en archivos .docx para mostrarlos en el navegador.

Luego traté de implementar parseWordDocxFile a través de una interfaz diferente: después de cargar archivos en un servidor usando $.post , los muestro como una lista. De esta lista, se puede hacer doble clic en cualquier línea de la siguiente manera:

 let myFile = {"reference": reference, "type": type}; openDocument (myFile);

"referencia" y "tipo" se recuperan de una solicitud $.get : "referencia" es la ruta completa al archivo deseado; "tipo" es el tipo de archivo.

La firma del destinatario es openDocument (theFile) . Esta función incluye un interruptor:

 switch (theFile.type) { case 'pdf': case 'PDF': case 'PNG': case 'png': case 'JPEG': case 'jpg': case 'JPG': window.open ( file.reference ); // browser handles it directly break; case 'docx': parseWordDocxFile(file.reference); break; // full path to the file, checked }

Para los tipos de archivo .pdf, .png, .jpg, funciona sin problemas.

Ahora, en cuanto a los archivos .docx, no sirve de nada. Al ingresar parseWordDocxFile , Debugger dice:

TypeError: FileReader.readAsArrayBuffer: el argumento 1 no es un objeto

PERO si vuelvo a copiar el archivo del servidor en mi disco local e intento abrirlo con la interfaz HTML (ídem), funciona. En otras palabras, no hay nada malo con el archivo almacenado en el servidor.

Supongo que podría pasar parseWordDocxFile(theFile) un objeto de archivo así:

 var objFile = new File ( [data], // type:= [] "Sample.docx", // full path correct { type: "application/vnd.openxmlformats-officedocument.wordprocessingml.document", // type displayed on debugging lastModified: 1650875824000 }

pero no tengo idea de qué datos serían.

¿Qué es lo que estoy haciendo mal? ¿Cuál es la forma correcta de hacerlo funcionar?

about 4 years ago · Juan Pablo Isaza
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda