Trung BìnhState Management iconState Management

refetchOnWindowFocus trong React Query là gì? Khi nào nên tắt nó?

refetchOnWindowFocus (mặc định bật) refetch tất cả stale queries khi user quay lại tab — tắt khi data ít thay đổi hoặc refetch gây UX kém. refetchOnWindowFocus là behavior mặc định: khi user chuyển tab rồi quay lại, React Query tự động refetch tất cả stale queries.

Mục đích: đảm bảo data luôn fresh — ví dụ user đang xem dashboard, chuyển qua Slack 5 phút, quay lại thì data cập nhật mới nhất.

Nên tắt (refetchOnWindowFocus: false) khi:

  1. data ít thay đổi (config, static content),
  2. refetch gây UX tệ (reset scroll, flash loading),
  3. API có rate limit

Có thể set global qua defaultOptions hoặc per-query.

Tương tự có refetchOnReconnect (khi mạng khôi phục) và refetchInterval (polling định kỳ).

Xem toàn bộ State Management cùng filter theo level & chủ đề con.

Mở danh sách State Management