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

64
Visualizações
Cómo manejar la llamada asíncrona dentro de la condición if

código dado sobre cómo manejar la llamada asíncrona en el interior si la condición no almacena el nombre nuevo en el nombre y ejecuta la devolución de llamada primero

 var xyz = function (data, callback) { try{ pool.query('select * from devices',[1],function(err,result){ if(result.rows[0].name = 12){ pool.query('select * from devices',[12],function(err,result){ result.rows[0].name = result.rows[0].newname; } } callback(result.rows[0].name); }); }catch(err){ callback(err); } }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Dado que etiquetó async-await, deberá usar Promise

Asi que

Crear una función auxiliar como esta

 const promiseQuery = (pool, ...args) => new Promise((resolve, reject) => { pool.query(...args, (err, result) => { if (err) return reject(err); resolve(result); }); });

Entonces úsalo así

 var xyz = async function (data, callback) { try { const result = await promiseQuery(pool,'select * from devices', [1]); if (result.rows[0].name = 12) { const result = await promiseQuery(pool, 'select * from devices', [12]); result.rows[0].name = result.rows[0].newname; callback(result.rows[0].name); } } catch (err) { callback(err); } }

Por supuesto, algunas db ya tienen una versión prometida de sus funciones.

Entonces sería como

 var xyz = async function (data, callback) { try { const result = await pool.query('select * from devices', [1]); if (result.rows[0].name = 12) { const result = await pool.query('select * from devices', [12]); result.rows[0].name = result.rows[0].newname; callback(result.rows[0].name); } } catch (err) { callback(err); } }
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