Zarządzanie stanem · Middle · Pytanie 58 z 75
Jak sprawić, by komponent renderował się ponownie tylko przy zmianie jednego posta z buforowanej listy?
const { post } = useGetPostsQuery(undefined, {
selectFromResult: ({ data }) => ({ post: data?.find((p) => p.id === id) }),
});- ✓Poprawna odpowiedź: Użyć
selectFromResult, by wybrać potrzebną część wyniku zapytania - 2Opakować komponent w
memo - 3Wywołać endpoint dla każdego posta
Wyjaśnienie
Hook płytko porównuje wybraną wartość i pomija rendery, jeśli się nie zmieniła. Zwracaj z selektora stabilne referencje.