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

263
Visualizações
¿Podemos cambiar el estado antes de hacer una llamada a la API que use ese estado? Reaccionar
 useEffect(() => { resetState(); if (page === 'ADMISSION') { fetchAdmissionKitPosts(); } else if (page === 'WEEKLY') { fetchWeeklyKitPosts(); } else if (page === 'FESTIVAL') { fetchFestivalKitPosts(); } }, [page]);

Entonces quiero hacer diferentes llamadas API basadas en la variable de página. Tengo que restablecer el estado antes de hacer esas llamadas. Pero mientras hago la llamada obtengo el estado anterior. Me di cuenta de que setState en reaccionar es de naturaleza asíncrona, así que asumo que es por eso que obtengo el estado anterior en las funciones de llamada API.

Entonces, mi pregunta es, ¿cómo puedo hacer que estas llamadas API solo se ejecuten después de que se haya restablecido el estado?

Sé que puedo usar una función de devolución de llamada en el componente basado en clases con la función setState. Pero quiero mantener este componente funcional.

about 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Puede implementar la devolución de llamada setState en el componente funcional con useEffect . si lo estoy haciendo bien, está utilizando dos páginas de variables de estado y publicaciones , si este es el caso, debe usar dos métodos useEffect como este:

 useEffect(() => { if(page !== ''){ setMarketingPosts([]) } }, [page]); useEffect(() => { if (page === 'ADMISSION') { fetchAdmissionKitPosts(); } else if (page === 'WEEKLY') { fetchWeeklyKitPosts(); } else if (page === 'FESTIVAL') { fetchFestivalKitPosts(); } setNextPageToken('') }, [post]);
about 4 years ago · Santiago Trujillo 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