初始化
This commit is contained in:
28
uni_modules/UniDevTools/node_modules/licia/SessionStore.js
generated
vendored
Normal file
28
uni_modules/UniDevTools/node_modules/licia/SessionStore.js
generated
vendored
Normal file
@@ -0,0 +1,28 @@
|
||||
var Store = require('./Store');
|
||||
var safeStorage = require('./safeStorage');
|
||||
var isEmpty = require('./isEmpty');
|
||||
var stringify = require('./stringify');
|
||||
var defaults = require('./defaults');
|
||||
var isObj = require('./isObj');
|
||||
var sessionStorage = safeStorage('session');
|
||||
exports = Store.extend({
|
||||
initialize: function SessionStore(name, data) {
|
||||
this._name = name;
|
||||
data = data || {};
|
||||
var sessionData = sessionStorage.getItem(name);
|
||||
try {
|
||||
sessionData = JSON.parse(sessionData);
|
||||
} catch (e) {
|
||||
sessionData = {};
|
||||
}
|
||||
if (!isObj(sessionData)) sessionData = {};
|
||||
data = defaults(sessionData, data);
|
||||
this.callSuper(Store, 'initialize', [data]);
|
||||
},
|
||||
save: function(data) {
|
||||
if (isEmpty(data)) return sessionStorage.removeItem(this._name);
|
||||
sessionStorage.setItem(this._name, stringify(data));
|
||||
}
|
||||
});
|
||||
|
||||
module.exports = exports;
|
||||
Reference in New Issue
Block a user