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

162
Visualizações
cómo almacenar en caché la respuesta useRequest?

Estoy usando useRequest de la biblioteca ahooks . Especifiqué cacheKey en las opciones, pero la misma solicitud se repite una y otra vez cuando se supone que debe recuperarse del caché.

 let someVar = 'someValue' const { data, loading } = useRequest( async () => someRequestThatDependOnVariable(someVar), { refreshDeps: [someVar], cacheKey: `request-${someVar}`, }, );

someVar se actualiza a través del campo de selección

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

0

pero la misma solicitud se repite una y otra vez cuando se supone que debe recuperarse del caché.

Esto es como fue diseñado.

Según la documentación :

Si se establece options.cacheKey , useRequest almacenará en caché los datos correctos. La próxima vez que se inicialice el componente, si hay datos almacenados en caché, primero devolveremos los datos almacenados en caché y luego enviaremos una nueva solicitud en segundo plano.

Entonces, el objetivo de cacheKey aquí es ocultar la carga de datos al mostrar los datos previamente almacenados en caché mientras se obtienen los últimos datos. Esto no impide que se carguen los datos.

Sin embargo, si también usa la propiedad staleTime , puede indicarle que no realice una nueva consulta durante algunos segundos desde la última solicitud exitosa.

Puede configurar el tiempo de retención de datos a través de options.staleTime . Durante este tiempo, consideramos que los datos están actualizados y no reiniciaremos la solicitud.

 const { data, loading } = useRequest( async () => someRequestThatDependOnVariable(someVar), { refreshDeps: [someVar], cacheKey: `request-${someVar}`, staleTime: 10 * 60 * 1000 // 10 minutes in milliseconds }, );
about 4 years ago · Santiago Gelvez 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