0.0.4 • Published 11 months ago
azz-storage v0.0.4
Azz Storage
This is a handy wrapper for web localStorage for now
Support localStorage, sessionStorage, and InMemory Storage
Installation
npm install --save azz-storage
Usage
import { LocalStorage } from "azz-storage";
// import { SessionStorage } from "azz-storage";
// import { MemoryStorage } from "azz-storage";
const lStore = new LocalStorage("__pro");
lStore.set("token", "logined"); // Will save key as __protoken in localStorage
lStore.get("token"); // "logined"
with parser like vue-ls
const vueLSLikeParser: IStorageParser = {
getVal(val: string, defaultVal: unknown): unknown {
try {
const data = JSON.parse(val);
return data.value;
} catch (e) {
return defaultVal;
}
},
setVal(val: unknown) {
return JSON.stringify({
value: val,
});
},
};
const localVueLikeStore = new LocalStorage("__vuels", vueLSLikeParser);
API
Storage
Contructor
import { LocalStorage } from "azz-storage";
// SessionStorage and MemoryStorage have same api with LocalStorage
const lStore = new LocalStorage([keyPrefix, parser]);
argument | type | description | default | required |
---|---|---|---|---|
keyPrefix | string | the key prefix for preventing conflict in your web app with other library | undefined | true |
parser | IAzzStorageParser | for sepecific use, liking auto JSON parse/stringify like vue-ls or do some log | undefined | false |
Instance APi
lStore.get([key, defaultVal]);
lStore.set([key, val]);
lStore.remove([key]);
method | argument | type | description | default | required |
---|---|---|---|---|---|
get | key | string | the storage key | undefined | true |
get | defaultVal | unknown | when the target value not defined, you will get the default one | undefined | false |
set | key | string | same as get method key | undefined | true |
set | val | unknown | the val you want to save | undefined | true |
remove | key | remove | remove key mapped value | undefined | true |