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

103
Vistas
esperando que la base de datos se conecte antes de exportar las funciones del módulo al controlador

Recibo el siguiente error:

 Service.getUsers is not a function

Recientemente cambié mi código para incluir esta funcionalidad:

 async function connectToDatabase(secret) { try { const secretValue = await getSecretPromise(secret) const { host, port, username, password, dbname } = JSON.parse(secretValue); con = mysql.createConnection({ host: host, port: port, user: username, password: password, database: dbname }); con.connect(function(err) { if (err) throw err; console.log("Connected to database!"); }); } catch (error) { console.error(error) } } connectToDatabase(secretName).then(function() { module.exports = { createUser, getUsers, patchUser, loginUser, updateCallForward, getEmail, getCallForwardingNumber, }; });;

Básicamente, solo exportará las funciones al controlador si la base de datos está conectada y el valor de con está inicializado (esto asegura que el valor de con no esté indefinido, lo que me ha estado preocupando). Sin embargo, cuando hago esto, se mete con el controlador js y aparece el error anterior.

 var accountService = require('./account.service'); router.get('/get-users', getUsers); async function getUsers(req, res, next) { accountService.getUsers().then(function(val) { res.json(val) }); }

Creo que esto se debe a la espera que se emplea en service.js. ¿Puedo hacer que el controlador espere a que las funciones se inicialicen a través de la exportación?

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