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

168
Views
NodeJs: ¿Hay alguna forma de salir de toda la función en lugar de solo la función interna con retorno?

entonces tengo esta funcion

 app.post('/assignment/loan', (req, res) => {

Y dentro de esa función tengo esta función

 db.run('SELECT loanable FROM book WHERE id=?',[bookID],(err,row)=>{

Uso return pero solo sale de la función interna y continúa con el resto. Quiero evitar que toda la función de publicación se ejecute más. ¿Hay una manera de hacer eso?

Editar: código completo aquí: https://pastebin.com/8TPThfpW

Gracias de antemano.

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

No directamente. En el momento en que se run la devolución de llamada de ejecución, la función que la llamó ya ha regresado . Esto se debe a la naturaleza de la semántica de ejecución a finalización de JavaScript y al hecho de que las devoluciones de llamada de Node.js de este tipo se llaman de forma asincrónica.

Puede considerar usar contenedores de promesa alrededor de esas funciones y luego poner su lógica en una función async para que pueda hacer que la lógica de la función espere hasta que se complete la operación de run y el manejo de sus resultados. Es difícil darle una sugerencia concreta con un código tan fragmentario para trabajar, pero algo vagamente como esto:

 // In an `async` function... const res = await promiseEnabledAppPost('/assignment/loan'); const row = await promiseEnabledDBRun('SELECT loanable FROM book WHERE id=?',[bookID]); // ...do something with `row`... if (/* you don't want to continue with the `post` callback logic */ { return; } // ...continue the logic from the `post` callback...
about 4 years ago · Juan Pablo Isaza Report
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!