Меняется фильтр по статусу, а список заказов остаётся прежним
function OrdersTable({ status }) {
const { data } = useQuery({
queryKey: ['orders'],
queryFn: () => fetchOrders({ status }),
});
return <Table rows={data} />;
}
Пользователь переключает фильтр со «всех» на «оплаченные», проп status меняется, но новый запрос не уходит, а в таблице старые данные. Почему?
- status не входит в queryKey — для библиотеки это тот же запрос
- queryFn замыкает первое значение status и не видит новое
- useQuery не перерисовывает компонент при смене пропсов
- Нужно вызвать refetch() в useEffect при смене status
