TanStack Query
React 🟡 MidDefinition
Librairie de gestion de l'etat serveur (fetching, caching, synchronisation). Gere automatiquement le cache, la revalidation, le retry et les mises a jour optimistes.
Analogie
Comme un concierge d'hotel : il anticipe tes besoins, garde tes affaires en cache et les rafraichit discretement.
Exemple de code
const { data, isLoading } = useQuery({
queryKey: ['users', userId],
queryFn: () => fetch(`/api/users/${userId}`).then(r => r.json()),
staleTime: 5 * 60 * 1000,
gcTime: 10 * 60 * 1000,
});
Cas d'usage
Toute application qui consomme une API REST/GraphQL et a besoin de cache intelligent et de revalidation.
Anti-pattern
Stocker le resultat de useQuery dans un useState local, duplicant l'etat et perdant le cache.