Trung BìnhState Management iconState Management

useMutation hook dùng để làm gì? Cách xử lý optimistic updates?

useMutation xử lý write operations (POST/PUT/DELETE) — khác useQuery chỉ đọc.

Cung cấp mutate() (fire-and-forget) hoặc mutateAsync() (trả về Promise).

States: isPending, isError, isSuccess, data, error.

Optimistic update flow:

  1. onMutate: cancel ongoing queries, snapshot data cũ, set cache mới ngay → UI cập nhật tức thì.
  2. onError: nhận snapshot từ onMutate context, rollback cache.
  3. onSettled: invalidate queries để sync với server

Ví dụ thực tế: user like bài viết → heart đỏ ngay lập tức (optimistic), nếu API fail → rollback heart về trắng.

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

Mở danh sách State Management