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

212
Visualizações
No se puede obtener el resultado de un módulo nodejs

Escribí un pequeño módulo de Javascript para obtener filas de una base de datos MongoDB:

 async function getAll() { await mongoose.connect(config.mongoURL).catch(err => { console.log(err); }); const conn = mongoose.connection; conn.collection('healthdata') .find({}).toArray().then(result => { console.log('=>Docs:', result); return result; }).catch (err => { console.log(err); }).finally(() => { conn.close(); }); } exports.getAll = getAll

Obtengo la visualización correcta de la consola ("=>Docs:"). Pero, cuando quiero obtener el resultado de la siguiente función de llamada, obtengo el valor Indefinido ("Resultado:"):

 app.get("/", async (req, res) => { var docs = await db.getAll().then(); console.log("Result:", docs); res.render("index.html"); });

¿Lo que falta? ¿Equivocado?

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

0

Creo que la línea console.log(Result:...) se está ejecutando antes de que se complete getAll.

Lo envolvería dentro de la cláusula "entonces":

 app.get("/", async (req, res) => { const docsReturned = await db.getAll() .then(docs => { console.log("Result:", docs); res.render("index.html"); }) .catch(err => { console.error(err); })); return(docsReturned);

También sugiero agregar una captura para cualquier error... buenas prácticas. :)

about 4 years ago · Juan Pablo Isaza Relatório

0

no debe mezclar promesas con async/await, por lo que la respuesta proporcionada por G-Force pero eliminar await antes db.getAll() o usar var docs = await db.getAll(); Esto debería solucionar tu problema.

about 4 years ago · Juan Pablo Isaza Relatório

0

Hermano, si está usando mangosta, siga estos para obtener datos del esquema de mangosta

 schema.find().exec().then(result=>{ console.log(result) }).catch(error=>{ console.log(error) })

aquí todos los datos del esquema dan como resultado que consolamos si aparece algún error, se muestra en console.log (error)

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