Wrapper around sessionStorage and localStorage for angular2. If both are unavailable will use an in memory storage.
$ npm i --save angular2-locker
import {bootsrap, provide} from 'angular2/core'
import {Locker, LockerConfig} from 'angular2-locker'
bootstrap(App, [Locker])
// If you need to specify more you can provide configuration
bootstrap(App, [provide(LockerConfig, {
useValue: new LockerConfig('MyNamespace', Locker.DRIVERS.LOCAL)
})), Locker])
// LockerConfig also has an optional namespace separator (defaults to :)
bootstrap(App, [provide(LockerConfig, {
useValue: new LockerConfig('MyNamespace', Locker.DRIVERS.LOCAL, '.') // Values will be stored as **MyNamespace.myKey**
})), Locker])
class App {
constructor(private locker: Locker) {}
}
####get
locker.get('myKey')
####set
locker.set('myKey', 'value')
locker.set('myKey', {object: 'value'})
####key
locker.set('key', 'value')
locker.key(0) // 'key'
####has
locker.has('key')
####setNamespace
locker.setNamespace('myName')
####useDriver
// for more info on drivers look for static methods
var driver = locker.useDriver(Locker.DRIVERS.LOCAL)
driver.set('keey', 'value')
####remove
locker.remove('key')
####clear
locker.clear()
These are the types of drivers available. If you try to set it to a driver that is unsupported it will fallback to the memory driver
Types are available under Locker.DRIVERS
or import {DRIVERS} from 'angular2-locker'
DRIVERS.SESSION
- Session CacheDRIVERS.LOCAL
- Local StorageDRIVERS.MEMORY
- Memory StorageDRIVERS.COOKIE
- Cookies