Zarządzanie stanem · Middle · Pytanie 60 z 75
Po co niektóre zespoły grupują akcje Zustand w zagnieżdżony obiekt actions?
const useBearStore = create((set) => ({
bears: 0,
actions: { increase: () => set((s) => ({ bears: s.bears + 1 })) },
}));
export const useBearActions = () => useBearStore((s) => s.actions);- ✓Poprawna odpowiedź: Akcje się nie zmieniają, więc komponenty mogą wybrać je wszystkie naraz bez ponownych renderów przy zmianach stanu
- 2Zustand wymaga zagnieżdżania akcji
- 3Dzięki temu akcje stają się asynchroniczne
Wyjaśnienie
Wybór stabilnego obiektu actions za każdym razem zwraca tę samą referencję. Własne hooki dodatkowo ukrywają kształt store'a przed komponentami.