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

134
Visualizações
Funciones para ejecutar después de que la función anterior se haya ejecutado por completo

Soy nuevo en reaccionar y estoy atascado en esto. Estoy llamando funciones en una función como esta:

 submit = () => { this.props.getValue(); this.props.resetValidation(); this.notify(); this.props.toggle(); this.props.disable(); this.props.actionCost(); //this.props.action(); // this.props.actionTable(); };

Lo que sucede es que todas las funciones se ejecutan simultáneamente sin que una función se ejecute por completo. ¿Por qué sucede esto si no se debe llamar a una función solo después de que la primera función se ejecute correctamente?

Además, ¿cómo ejecuto las funciones una tras otra después de que una función se haya ejecutado por completo?

Por favor ayuda

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

0

La única forma de detener el flujo de ejecución es mediante el uso de async/await generoator o una función de generador, e incluso estos son solo "azúcar sintáctico" además de Promise .

Probablemente esté llamando a una función asíncrona y esperando que se "complete" sin usar await .

Otra situación es llamar a una función que internamente usa llamadas asincrónicas (como axios o fetch ) y responde con devoluciones de llamada. En esta situación, la ejecución continúa y la devolución de llamada se llamará más tarde, por eso los llamamos "devolución de llamada".

Por ejemplo:

 console.log('before'); setTimeout(() => console.log('timer completed'), 1000); console.log('after');

Resultará en:

 before after timer completed

En este ejemplo, estoy iniciando sesión before , luego establezco un tiempo de espera en el que proporciono una devolución de llamada (una función simple) que se ejecutará más tarde (1 segundo), mientras tanto, el flujo de ejecución continúa y se registra after . una vez que el temporizador llegó, el sistema ejecutará mi devolución de llamada.

En caso de que desee ejecutar el after después de que se timer completed , deberá proporcionar una devolución de llamada que se llamará después de que finalice la ejecución.

como esto:

 function logTimer(doAfter) { setTimeout(() => { console.log('timer completed'); doAfter(); }, 1000); } console.log('before'); logTimer(() => console.log('after'));
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