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

195
Visualizações
Manejar errores dentro de las funciones de alcance de promesa

Tengo una función asíncrona que devuelve la promesa. En esta promesa, tengo una función de alcance y, dentro de ella, tengo otras 2 funciones de alcance. Si trato de arrojar un error en la función a el código continúa su ejecución.

 async someAsyncFunc(): Promise<void> { return new Promise((resolve, reject) => { // eslint-disable-next-line @typescript-eslint/no-explicit-any let port: any; // eslint-disable-next-line @typescript-eslint/no-explicit-any let writer: any; const test = async () => { const a = async () => { throw new Error(); }; const b = async () => { // do some work await a(); }; try { await b(); } catch (err) { console.log(err); } resolve(); }; try { test().catch((err) => { console.log("catch block error"); console.error(err); reject(err); }); } catch (error) { return reject(error); } finally { } }); }

De alguna manera quiero manejar todos los errores que podrían ocurrir en cualquiera de las funciones a, b y cargar en este bloque de captura de prueba final de la promesa devuelta

 try { test().catch((err) => { console.log("catch block error"); console.error(err); reject(err); }); } catch (error) { return reject(error); } finally { }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

 try { await b(); } catch (err) { console.log(err); }

Estás detectando y manejando el error allí.

No puede obtenerlo en el controlador de captura de test() porque no se genera ningún error hasta ese punto.

Ya se ha manejado.

Necesitarías lanzarlo de nuevo si quieres algo más para atraparlo:

 try { await b(); } catch (err) { console.log(err); throw 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