Bundle Size
Babel |
Minified |
Gzipped |
Note |
Uncompiled |
5.35 Kb |
2.01 Kb |
|
Polyfill |
2.55 Kb |
901 byte |
Increased 31% |
Compiled |
7.91 Kb |
2.91 Kb |
Compressed 63% |
Core JS |
Minified |
Gzipped |
Note |
Before |
12.6 Kb |
4.26 Kb |
Including dependencies |
core-js |
14.5 Kb |
5.02 Kb |
Increased 54% |
After |
27.4 Kb |
9.27 Kb |
Compressed 66% |
Usage
import {
lstore, // lstore core
lsInit, // to initate lstore
lsOptions, // creating options (typescript helper)
lsInstance, // creating an instance (typescript helper)
lsSchema // creating an schema (typescript helper)
} from 'tn-vue-lstore'
// Initiate lstore
let init = lsInit(options, ...instances[])
// Install the plugin
Vue.use(lstore, init)
lsOptions()
- Typescript helper
lsOptions(UserOptions)
type UserOptions = {
dev: {
package: string
loglimit?: number // 300
loggerChunk?: number // 50
disablelogging?: Method[] // ['get']
}
prod?: {} /* future plans */
}
Method list
lsInstance()
- Typescript helper
lsInstance(UserInstance)
type UserInstance = {
namespace: string
schema: UserSchema
storetype?: Storetype // 'local'
}
type Storetype = 'local' | 'session'
lsSchema()
- Typescript helper
lsSchema(UserSchema)
type UserSchema = {
[prop: string]: Schemaval
}
type Schemaval = Checker | Checker[] | SchemaSimple | SchemaNested
type SchemaSimple = {
nested?: never
default?: any
checker?: Checker | Checker[]
removable?: boolean
}
type SchemaNested = {
nested: UserSchema
unknown?: {
keyname?: RegExp | RegExp[]
checker?: Checker | Checker[]
}
}
Checker list
Usage in Vue
/**
* Namespace : foo/bar
* Schema path : baz > far
**/
this.$lstore.foo.bar('baz.far').method()
/**
* CheckError & Success callback
* Only for setter methods (See Methods)
**/
const cberror = function(){ ... }
const cbsuccess = function(){ ... }
this.$lstore.foo.bar('baz.far', cberror, cbsuccess).setter()
/**
* Also lstore can be accessed as a global variable
**/
$lstore
Method list
Devtools Commands
> $lstore
> $lstorelog
> $lstorelogFull
Checker list
String
Number
Boolean
Array
Object
RegExp
'json'
'null'
function(val){ return Boolean }
Method list
- Getters
- Setters
set(any)
setQuery(function)
increase(increaseby?)
decrease(decreaseby?)
push(...any[])
unshift(...any[])
pop(howmany?)
shift(howmany?)
- Objs
assign({...})
remove(...keys[])