useLocalStorageState ​
A Hook that store state into localStorage.
Code demonstration ​
Basic usage ​
Advanced usage ​
API ​
If you want to delete this record from localStorage, you can use setState()
or setState(undefined)
.
typescript
interface Options<T> {
defaultValue?: T | (() => T);
serializer?: (value: T) => string;
deserializer?: (value: string) => T;
}
const [state, setState] = useLocalStorageState<T>(
key: string,
options: Options<T>
): [T?, (value?: T | ((previousState: T) => T)) => void];
Options ​
Property | Description | Type | Default |
---|---|---|---|
defaultValue | Default value | any | (() => any) | - |
serializer | Custom serialization method | (value: any) => string | JSON.stringify |
deserializer | Custom deserialization method | (value: string) => any | JSON.parse |
Result ​
Property | Description | Type |
---|---|---|
state | Local Storage-value | Ref<any | undefined> |
setState | Set Storage value | SetState |
Remark
useLocalStorageState will call serializer
before write data to localStorage, and call deserializer
once after read data.