Aller au contenu

useLocalStorage

Persiste l’état dans localStorage avec synchronisation automatique entre les onglets.

import { useLocalStorage } from 'asterui'
function SettingsExample() {
const [theme, setTheme] = useLocalStorage('theme', 'light')
const [user, setUser, removeUser] = useLocalStorage('user', null)
return (
<>
<Select value={theme} onChange={setTheme}>
<option value="light">Clair</option>
<option value="dark">Sombre</option>
</Select>
<Button onClick={removeUser}>Déconnexion</Button>
</>
)
}
ParamètreTypeDescription
keystringClé localStorage
initialValueTValeur initiale si la clé n’existe pas

Retourne un tuple [value, setValue, removeValue] :

IndexTypeDescription
0TValeur stockée actuelle
1(value: T | (prev: T) => T) => voidMet à jour la valeur
2() => voidSupprime de localStorage et réinitialise à la valeur initiale
  • Synchronise entre les onglets/fenêtres via l’événement storage
  • Compatible SSR (gère window indéfini)
  • Supporte les mises à jour fonctionnelles comme useState