00
:
00
:
00
:
00
Corso SEO AI - Usa SEOEMAIL al checkout per il 30% di sconto

Persistenza

Middleware persist

Zustand offre un middleware persist che salva automaticamente lo stato e lo reidrata all’avvio.

```tsx import { create } from ‘zustand’ import { persist, createJSONStorage } from ‘zustand/middleware’

export const useBoundStore = create( persist( (set, get) => ({ fishes: 0, addAFish: () => set({ fishes: get().fishes + 1 }), }), { name: ‘food-storage’, // nome univoco della chiave in localStorage storage: createJSONStorage(() => sessionStorage), // (opzionale) default localStorage }, ), ) ```

Partialize (Salvataggio Parziale)

Spesso non vuoi salvare tutto lo store (es. loading, error o dati sensibili).

```tsx { name: ‘auth-storage’, partialize: (state) => ({ token: state.token }), // Salva solo il token } ```

OnRehydrateStorage

Puoi eseguire codice quando l’idratazione è completata (es. loggare il successo).

```tsx { name: ‘storage’, onRehydrateStorage: () => (state) => { console.log(‘hydration finished’) } } ```