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

150
Vistas
¿Cómo exporto una matriz de objetos y sus propiedades a otro archivo JS?

Mi proyecto escolar en curso me obliga a utilizar WebPack, el paquete de módulos estáticos. Ahora lo que estoy tratando de hacer es exportar

 const data = [ { description: "Go swimming", completed: true, index: 1, }, { description: "Create an animated puppet", completed: false, index: 2, }, { description: "Hack NASA", completed: false, index: 2, }, ];

e importarlo en mi archivo functions.js con la función de importación. Pero no está funcionando.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Webpack admite módulos nativos de JavaScript (ESM), que sugiero usar. (A diferencia de CommonJS [ require llamadas y demás].)

Casi literalmente tiene la parte de exportación en la pregunta, simplemente mueva la export al bloque de código:

 export const data = [ // ... ];

Esa es una exportación con nombre . Lo importas así (si lo anterior está en the-source-module.js en el mismo directorio):

 import { data } from "./the-source-module.js";

...con la función de importación.

No hay una función de import , pero hay una construcción de import muy similar a una función llamada importación dinámica . Se ve exactamente como una función que devuelve una promesa . Si eso es lo que le dicen que use (en lugar de una declaración de import como se indicó anteriormente), se vería así:

En un entorno que admite await de nivel superior (Webpack lo hace):

 const { data } = await import("./the-source-module.js"); // ...use `data` here...

En un entorno que no:

 import("./the-source-module.js") .then(({data}) => { // ...use `data` here... }) .catch(error => { // ...import failed... }); // DON'T TRY TO USE `data` HERE, IT WON'T WORK

Más en MDN:

  • Descripción general de los módulos
  • export
  • import (incluye import() )

También cubro módulos en el Capítulo 13 de mi libro reciente JavaScript: The New Toys (y promesas en el Capítulo 8, y todas las demás cosas de ES2015-ES2020) .


Nota: El uso de {} en import { data } from ... puede parecerse un poco a la desestructuración, pero no es una desestructuración. Aparte de {} , pero la semántica y la sintaxis de las importaciones con nombre y la desestructuración son bastante diferentes. Por ejemplo, si quisiera usar un nombre que no sea data , sería import { data as yourName } from ... , que no es como funciona el cambio de nombre con la desestructuración.

De manera un poco confusa, los ejemplos anteriores con import() están usando desestructuración. La promesa "devuelta" por import() se cumple con un objeto llamado "objeto de espacio de nombres de módulo" que tiene una propiedad para cada exportación nombrada. Eso, junto con su naturaleza dinámica, es una diferencia fundamental entre la import() y las declaraciones de import .

about 4 years ago · Juan Pablo Isaza Denunciar
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