1. はじめに:クエリキーが重要な理由
React Query(TanStack Query)を初めて導入すると、ほとんどの場合はこのように始めます。
useQuery({ queryKey: ['product-list'], queryFn: fetchProducts });
useQuery({ queryKey: ['product', productId], queryFn: () => fetchProduct(productId) });
useQuery({ queryKey: ['project-health', productId], queryFn: () => fetchHealth(productId) });
コンポーネントが数個しかないうちは問題ありません。しかし、ドメインが増え、チームメンバーが増え、機能が積み重なると、ある時点で次のような状況に直面します。
*
「product関連のキャッシュをすべて削除したいけど、キーはどこにあるんだ?」
*
「['product