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

128
Visualizações
¿Es una buena práctica tener siempre un bloque catch para la declaración de espera?

Por ejemplo, tengo una función asíncrona:

 prepAttrsRef.current.addEventListener('documentstatechanged', async (evt: CustomEvent<FlowDocumentState>) => { if (evt.detail.draftState === 'unpublished-changes') { dispatch(updateIsFlowpublished(false)); await publishPrepFlow(); } if (evt.detail.draftState === 'all-changes-published') { await cleanSteps[0].selectAsync(); } } await getAndDispatchPrepColumns(); });

¿Debería encerrar siempre las líneas de await con try/catch o al menos un catch para manejar el caso potencial de que la promesa podría ser rechazada? (Aunque no se si la promesa será rechazada o no, ya que estoy llamando a la API creada por otros)

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

0

Siempre es una buena práctica manejar las excepciones en el punto de origen para evitar horas de depuración para descubrir por qué el código se está rompiendo. Ahora, habiendo dicho eso, creo que debe decidir en qué nivel necesita manejar las excepciones.

En producción, no tiene idea de qué entradas/parámetros puede obtener si están expuestos al usuario final. Puede haber un caso en el que la entrada sea un valor que no pueda ser manejado por la API subyacente, lo que hará que su servicio falle.

ingrese la descripción de la imagen aquí

Por ejemplo,

Si envuelve todo el bloque de código, es decir, dos declaraciones de await en un bloque try-catch , no sabrá qué await falló a menos que tenga excepciones personalizadas generadas por la función esperada.

about 4 years ago · Juan Pablo Isaza Relatório

0

para un código limpio, sí, debe hacer eso, se supone que su función debe hacer una cosa y si falla, debe dejar que ladre (dónde está el problema), eso lo ayudará en la depuración.

si tiene muchos intentos/capturas en el mismo bloque, su función hace muchas cosas y eso no es una buena práctica.

Es un buen ejemplo

 try{ await publishPrepFlow(); }catch(error){ // throw it to handle it on a different level throw Error('unable to publishPrepflow') // no any action | write on log file at least ... console.log('unable to publishPrepflow') }

para manejar todas las excepciones no detectadas y las promesas rechazadas

 process .on('unhandledRejection', (reason, p) => { console.error(reason, 'Unhandled Rejection at Promise', p); }) .on('uncaughtException', err => { console.error(err, 'Uncaught Exception thrown '+ err.message); });

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