kv
This is a fork of idk-kv
.
A super simple key value store backed by IndexedDB.
Since it is backed by IndexedDB, you can store anything structured-clonable (numbers, arrays, objects, dates, blobs etc - but beware of browser support).
It's best used with a module loader (webpack, browserify, etc...) so that the global scope isn't poluted with kv
.
Usage
string
name) kv
kv(Creates a custom kv store with a given name.
const store = kv('sw-storage');
await store.set('hello', 'world');
console.log(await kv.get('hello'));
// -> undefined
string
key, *
value) Promise
kv.set(await kv.set('hello', 'world');
await kv.set('foo', 'bar');
try {
await kv.set('hello', 'world')
console.log('It worked!');
} catch(err) {
console.log('It failed!', err);
}
string
key) Promise<*>
kv.get(console.log(await kv.get('hello'));
// -> "world"
Promise<string>
kv.keys() console.log(await kv.keys());
// -> ["hello", "foo"]
string
key) Promise
kv.remove(await kv.remove('hello');
Promise
kv.clear() await kv.clear();
That's it!