swr-sync-storage
v1.0.1
Published
Synchronize SWR cache with localStorage or sessionStorage to get offline cache
Downloads
437
Readme
swr-sync-storage
Synchronize SWR cache with localStorage or sessionStorage to get offline cache.
Usage
Install it
$ yarn add swr-sync-storage
Note: You will need to provide SWR v0.2.0-beta.0 or greater
import { syncWithStorage } from "swr-sync-storage";
syncWithStorage("local");
syncWithStorage("session");
You can also import to already bound versions of local or session storage.
import { syncWithLocalStorage } from "swr-sync-storage";
syncWithLocalStorage();
import { syncWithSessionStorage } from "swr-sync-storage";
syncWithSessionStorage();
All the functions will return a function to stop subscribing for cache changes.
All functions receive a parser
function to let you parse the storage value, the default value is:
function parser(value: string): any {
return value === 'undefined' ? undefined : JSON.parse(value);
}
If your SWR cache could have non-object values such as numbers you could pass a custom parser and control how syncWithStorage
will transform it before adding it to SWR.