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

268
Visualizações
Llamar a AbortController.abort() en recuperación resuelta

Tengo una aplicación React que puede realizar una serie de solicitudes de recuperación, según las interacciones del usuario. Quiero anular las solicitudes de búsqueda antiguas cada vez que la aplicación recibe una nueva.

Para lograr esto, he creado un gancho personalizado, useData . Su función principal es ejecutar un gancho useEffect cada vez que cambia la url . Me parece que la forma más fácil de abortar solicitudes antiguas es usar el mecanismo de limpieza proporcionado por useEffect . Pero esto abort todas las solicitudes, no solo las incompletas.

¿Hay algún problema oculto que esto pueda causar? Parece que no debería hacer mucho para una recuperación resuelta, pero no puedo encontrar ninguna documentación que lo respalde.

Este es mi código:

 /** Returns data for a given url. */ export const useData = function (dataUrl) { const [loadedData, setLoadedData] = useState(Object.assign({})); // runs if/when the url changes useEffect(() => { // new controller for each new url const controller = new AbortController(); async function getData(dataUrl) { if (!dataUrl) return; // load data & set state try { const data = await fetch(dataUrl, { signal: controller.signal, }); setLoadedData(data); } catch (e) { console.error(`useData failed for url ${dataUrl}\n${e}.`); } } getData(dataUrl); // clean up the last request before running // useEffect for on the next url return () => { controller.abort(); }; }, [dataUrl]); // return data in the hook's state, set by useEffect return loadedData; };
about 4 years ago · Juan Pablo Isaza
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