/* * @Description: sessionStorage 封装 * @Author: sql * @Date: 2018-11-23 21:02:16 * @LastEditTime: 2018-11-27 17:25:50 */ import crypt from "@/lib/crypt" class SessionStorage { constructor() { this.Data = sessionStorage } // 获取 key中的数据 Get(key, flag = false) { let res = null if (flag) { res = crypt.Decrypt(this.Data[key]) } else { res = this.Data[key] } return this.IsExist(key) ? res : null } // 更新或创建新数据 Set(key, val, flag = false) { let res = null if (flag) { res = crypt.Encrypt(String(val)) } else { res = String(val) } this.Data[key] = sessionStorage[key] = res } // 输出 key 数据 Del(key) { this.Data[key] = null sessionStorage.removeItem(key) } // key数据是否存在 IsExist(key) { return this.Data.getItem(key) ? true : false } // 清除所有session Clear() { this.Data = null sessionStorage.clear() } } export default new SessionStorage