Quiero crear un enlace personalizado que mantenga un caché y obtenga solo elementos nuevos.
Comportamiento esperado:
Si solicité [1, 2, 3, 4, 5] inicialmente, obtiene todo [1, 2, 3, 4, 5] ya que el caché está vacío.
Si solicité [1, 2, 3] entonces, no debería obtener nada y regresar del caché.
Si solicité [4, 5, 6] entonces, debería tomar 4 y 5 del caché y buscar solo 6 y agregar eso al caché.
¿Cómo puedo lograr esto con optimismo?
Si ya está usando react-query , entonces no necesita un enlace personalizado: ya administra este caché por usted en función de sus claves de consulta :
En esencia, React Query administra el almacenamiento en caché de consultas en función de las claves de consulta.
También proporciona un enlace para consultas paralelas (simultáneas) e independientes. Ese gancho se llama useQueries :
const results = useQueries({ queries: [ { queryKey: ['post', 1], queryFn: () => fetchPost(1) }, { queryKey: ['post', 2], queryFn: () => fetchPost(2) }, ], });