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

284
Visualizações
¿Cómo deshabilitar volver a llamar a la API después de hacer clic y ejecutar recuperar el gancho de consulta de reacción?

por ejemplo, tengo un componente para buscar y llamar a una API, pero esa consulta está enabled: false y debería activarla con onClick:

 const query = useQuery('key', fetch, { enabled: false }) const exec = () => query.refetch() return <button onClick={exec}>Load</button>

Pero tengo una nueva llamada API después de cada clic en el botón, en realidad quiero cancelar volver a llamar a la API aún así los datos almacenados en caché están disponibles y no están obsoletos...

¿Hay alguna forma de implementar algo como refetch para recuperar datos almacenados en caché pero sin volver a llamar a la API? ¿nuestra consulta básicamente de reacción tiene una llamada de recuperación para cualquier dato retenido?

de hecho, nuestros datos no cambian con frecuencia y se corrigen durante 2-3 días...

En otras palabras, nuestros clientes trabajan con frecuencia con menús desplegables anidados con las mismas llamadas a la API y quiero reducir las mismas consultas clave... imagina eso, algo así como categoría para seleccionar una marca para los productos.

Gracias

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

0

Puede configurar las opciones staleTime y cacheTime de su consulta en Infinity para mantener su caché siempre disponible

captura de pantalla de documentos de consulta de reacción

https://react-query.tanstack.com/reference/useQuery

about 4 years ago · Juan Pablo Isaza Relatório

0

imagina eso, algo así como categoría para seleccionar una marca para productos

Este es un ejemplo clásico para reaccionar-consulta en el que desea colocar todas las dependencias de su consulta en su clave de caché (consulte los documentos oficiales ). De esa manera, los cachés no se anularán entre sí y obtendrá instantáneamente los valores del caché si están disponibles. No es que también obtendrá una recuperación en segundo plano, y ahí es donde entra staleTime . Si no quiere eso, configure un staleTime más alto para recuperar solo el valor del caché si existe.

Para ilustrar, tomemos su ejemplo de una selección de categorías de productos:

 function MyComponent() { const [category, setCategory] = useState(null) const { data } = useQuery(['key', category], () => fetchProducts(category), { enabled: !!brand, staleTime: 1000 * 60 * 3 }) <CategorySelect onSelect={setCategory} /> }

Varias cosas están pasando aquí:

  1. Tengo algún estado local, donde almaceno la categoría seleccionada
  2. Esta selección impulsa la consulta. La consulta está deshabilitada mientras no tenga una selección, pero se habilita una vez que el usuario hace una selección
  3. cada vez que cambia la categoría, cambia la clave de consulta, lo que hará que react-query active una recuperación automáticamente, para los nuevos datos
  4. He configurado el staleTime en 3 minutos. Si elijo una categoría que ya he elegido, obtendré datos del caché. Dentro de 3 minutos, solo lo obtendré del caché. Si mis datos son más antiguos, los obtendré del caché y los datos también se actualizarán en segundo plano.
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