UNPKG

vue-simple

Version:

Use Vue in the simplest and easiest way, contain more than one of plugins and other to do that, i hope you will like it.

55 lines (53 loc) 2.03 kB
import _JSON$stringify from 'babel-runtime/core-js/json/stringify'; import STORAGE_TYPE from '../storageType'; /** * cookie 存储引擎 */ export default { type: STORAGE_TYPE.cookie, storage: document.cookie, getItem: function getItem(key) { var arr = void 0; var reg = new RegExp('(^| )' + key + '=([^;]*)(;|$)'); if (key.indexOf('setLogInfo') > -1) { reg = new RegExp('(^| )token=([^;]*)(;|$)'); } else { reg = new RegExp('(^| )' + key + '=([^;]*)(;|$)'); } if (arr = document.cookie.match(reg)) { return JSON.parse(unescape(arr[2])); } return null; }, setItem: function setItem(key, value) { var domain = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'blibao.com'; var selfvalue = _JSON$stringify(value); var Days = 30; var exp = new Date(); exp.setTime(exp.getTime() + Days * 24 * 60 * 60 * 1000); if (key.indexOf('setLogInfo') > -1) { // document.cookie = "token=" + escape (selfvalue) + ";expires=" + exp.toGMTString() + ';'; document.cookie = 'token=' + escape(selfvalue) + ';expires=' + exp['toGMTString']() + ';domain=' + domain + ';'; } else { document.cookie = key + '=' + escape(selfvalue) + ';expires=' + exp['toGMTString']() + ';'; } }, removeItem: function removeItem(key) { var exp = new Date(); exp.setTime(exp.getTime() - 1); var cval = this.getItem(key); // let reg = new RegExp('(^| )' + key + '=([^;]*)(;|$)'); if (cval != null) { if (key.indexOf('setLogInfo') > -1) { // reg = new RegExp('(^| )token=([^;]*)(;|$)'); // document.cookie = "token=" + JSON.stringify(cval) + ";expires="+exp.toGMTString(); document.cookie = 'token=' + _JSON$stringify(cval) + ';expires=' + exp['toGMTString']() + ';domain=blibao.com;'; } else { document.cookie = key + '=' + _JSON$stringify(cval) + ';expires=' + exp['toGMTString']() + ';'; } } }, clear: function clear() { document.cookie['clear'](); } };