Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

104
Views
Trabajar con módulos personalizados que tienen un nodo de código asíncrono js

Entonces, tengo un archivo data.js (el módulo personalizado) con el siguiente código aproximado (para no perder el tiempo entendiendo todo el código):

 let data; async function(){ data = await something; //the await returns an array, so data has an array } module.exports={data} // I am exporting the data array

Ahora estoy requiriendo el módulo en app.js

 data=require("./data.js"); //Now I am using express to send json data to a url app.get("/home",(req,res)=>{ res.json(data); });

Así que ahora, si abro la url (localhost: 5000/home), obtengo:

 {}

Ahora, si modifico data.js para

 let data=[]; //I made data an empty array first async function(){ data = await something; //the await returns an array, so data has an array } module.exports={data} // I am exporting the data array

Así que ahora, si abro la url (localhost: 5000/home), obtengo:

 {"data":[]}

Ahora si modifico data.js de nuevo

 let data=[]; //I made data an empty array first async function(){ data.push(await something); //the await returns an array, and I am pushing into the empty array } module.exports={data} // I am exporting the data array

Así que ahora, si abro la url (localhost: 5000/home), finalmente obtengo:

 {"data":[some data]} //This is how I want

Entonces, quiero entender cuál es la diferencia entre los tres archivos data.js y cómo exactamente requiere trabajar con el código asíncrono en el módulo personalizado. Si consuelo. log (datos) en el archivo app.js, me quedo vacío, lo cual es comprensible, ya que está sucediendo sincrónicamente antes del código asincrónico del módulo personalizado. Pero, por favor, ¿alguien podría explicar por qué los dos primeros métodos de data.js no funcionan?

¡Perdón por la larga pregunta!

about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!