// File: providers/query-provider.tsx "use client"; import { QueryClient, QueryClientProvider } from "@tanstack/react-query"; import { ReactQueryDevtools } from "@tanstack/react-query-devtools"; import { useState } from "react"; export default function QueryProvider({ children }: { children: React.ReactNode }) { // สร้าง QueryClient instance เพียงครั้งเดียวต่อ request const [queryClient] = useState( () => new QueryClient({ defaultOptions: { queries: { // ข้อมูลจะถือว่า "สดใหม่" (Fresh) เป็นเวลา 1 นาที staleTime: 60 * 1000, // จำนวนครั้งที่จะลองใหม่ถ้า Request ล้มเหลว retry: 1, refetchOnWindowFocus: false, }, }, }) ); return ( {children} ); }