Zust2help Guide

// Subscribe to changes const unsubscribe = useStore.subscribe((state) => console.log('State changed:', state) ) | Redux Concept | Zustand Equivalent | |---------------|--------------------| | Store | create() | | Reducer | set((state) => (...)) | | Action | Regular function | | Dispatch | Direct function call | | useSelector | useStore((state) => state.value) | | Middleware | middleware wrapper | Redux to Zustand Example Redux:

// Update state useStore.setState( count: 100 )

Problem 1: Component Re-renders Too Often Issue: Using the entire store causes re-renders when any state changes. zust2help

interface BearState bears: number addBear: () => void eatFish: () => void

// Option 1: getState() const handleClick = () => const currentCount = useStore.getState().count console.log(currentCount) // Subscribe to changes const unsubscribe = useStore

Use useStore with a selector inside the callback, or use getState() .

) ) Issue: LocalStorage or session is not available on the server. const useStore = create((set) => ( count: 0,

const useStore = create((set) => ( count: 0, increment: () => set((state) => ( count: state.count + 1 )), decrement: () => set((state) => ( count: state.count - 1 )), )) Using Redux DevTools Wrap your store with devtools() :