svelte-persistent-store
v0.1.6
Published
Persist your svelte store in localStorage or sessionStorage
Downloads
507
Readme
svelte-persistent-store
Persist your svelte store in localStorage
or sessionStorage
.
Install
npm install --save svelte-persistent-store
Usage
Persist to localStorage
import { writable, readable, derived } from 'svelte-persistent-store/dist/local';
// or
import { local } from 'svelte-persistent-store';
const { writable, readable, derived } = local;
const count = writable('count', 0);
count.set(1);
Persist to sessionStorage
import { writable, readable, derived } from 'svelte-persistent-store/dist/session';
// or
import { session } from 'svelte-persistent-store';
const { writable, readable, derived } = session;
const count = writable('count', 0);
count.set(1);
API
key
parameter is used by localStorage
and sessionStorage
to store and retrieve the value.
The Storage interface specification only allows string values, therefore this library serializes stored values as JSON.
// writable store of `T` values
store = writable(key: string, value: T, (set: (value: T) => void) => () => void)
// readable store of `T` values
store = readable(key: string, value: T, (set: (value: T) => void) => () => void)
// store of `U` values derived from store `a` of `T` values
store = derived(key: string, a, callback: (a: T, set: (value: U) => void) => void | () => void, initial_value: U)
// store of `U` values derived from stores `[a, ...b]` of `[T1, T2, ...]` values
store = derived(key: string, [a, ...b], callback: ([a: T1, ...b], set: (value: U) => void) => void | () => void, initial_value: U)
// get value from a store (re-export from 'svelte/store')
value: any = get(store)