A simple Vue plugin wrapped from localForage.
npm install vue-localforage
import VueLocalForage from 'vue-localforage'
Vue.use(VueLocalForage)
this.$getItem(key, callback)
this.$setItem(key, value, callback)
this.$removeItem(key, callback)
this.$clearStorage
this.$lengthOfStorage
this.$keyInStorage(keyIndex, callback)
this.$keysInStorage(callback)
this.$iterateStorage(function (value, key, iterationNumber) {
//console.log all the kay/value pairs
console.log([key, value]);
}, function (err) {
if (!err) {
console.log('Iteration has completed');
}
})
this.$setStorageDriver(localforage.LOCALSTORAGE)
By default, localForage selects backend drivers for the datastore in this order:
If you would like to force usage of a particular driver you can use $setStorageDriver() with one or more of the following parameters.
localforage.INDEXEDDB
localforage.WEBSQL
localforage.LOCALSTORAGE
this.$storageConfig({
driver: localforage.LOCALSTORAGE,
name: 'Name-of-localStorage'
});
This must be called before any other calls to localForage are made, but can be called after localForage is loaded.
driver
The preferred driver(s) to use. Same format as what is passed to setStorageDriver()
, above. Default: [localforage.INDEXEDDB, localforage.WEBSQL, localforage.LOCALSTORAGE]
name
The name of the database. May appear during storage limit prompts. Useful to use the name of your app here. In localStorage, this is used as a key prefix for all keys stored in localStorage. Default: 'localforage'
size
The size of the database in bytes. Used only in WebSQL for now. Default: 4980736
storeName
The name of the datastore. In IndexedDB this is the dataStore, in WebSQL this is the name of the key/value table in the database. Must be alphanumeric, with underscores. Any non-alphanumeric characters will be converted to underscores. Default: 'keyvaluepairs'
version
The version of your database. May be used for upgrades in the future; currently unused. Default: 1.0
description
A description of the database, essentially for developer usage. Default: ''