UNPKG

react-zeanium-ui-ui

Version:

Zeanium UI Framework for React.js

85 lines (79 loc) 2.27 kB
module.exports = { jump: function (path, search){ var _search = [], _value = null; this._search = this._search || ''; if(search){ for(var key in search){ _value = search[key]; if(typeof _value != 'string'){ _value = JSON.stringify(_value); } _search.push(key + '=' + _value); } this._search = '?' + _search.join('&'); } return location.hash = path + this._search, this; }, getPath: function (){ return location.hash.slice(1); }, clear: function (){ return this.getEngine().clear(), this; }, setEngine: function (engine){ this._engine = engine; }, getEngine: function (){ var _engine = this._engine || 'localStorage'; // Cookie, sessionStorage, localStorage if(_engine&&typeof _engine == 'string'){ _engine = window[_engine]; } return _engine; }, setKey: function (key){ this._key = key; }, getKey: function (){ return this._key || 'LOGIN_SESSION'; }, setKeyValue: function (key, value, timeout){ var _value = (typeof value=='object') ? JSON.stringify(value) : value; return this.getEngine().setItem(key, _value, timeout), this; }, getKeyValue: function (key){ return this.getEngine().getItem(key); }, jsonKeyValue: function (value){ var _value = this.getKeyValue(value); if(_value){ try { _value = JSON.parse(_value); }catch(e){ _value = {}; console.log(e.stack); } } return _value; }, set: function (value, timeout) { return this.setKeyValue(this.getKey(), value, timeout); }, get: function () { return this.getKeyValue(this.getKey()); }, json: function (name){ var _value = this.get(); if(_value){ try { _value = JSON.parse(_value); }catch(e){ _value = {}; console.log(e.stack); } } return _value; }, validate: function (){ } }