当前位置:首页 >> 网络编程

vue之浏览器存储方法封装实例

如下所示:

export function isObject (val) {
 return val !== null && typeof val === 'object'
}
export function setStore (key, val, type = 'localStorage') {
 if (isObject(val)) window[type].setItem(key, JSON.stringify(val))
 else window[type].setItem(key, val)
}
export function getStore (key, type = 'localStorage') {
 var val = window[type].getItem(key)
 try {
 return JSON.parse(val)
 } catch (e) {
 return val
 }
}
export function setSessionStore (key, val) {
 setStore(key, val, 'sessionStorage')
}
export function getSessionStore (key) {
 return getStore(key)
}
// 默认30minute
export function setExpireStore (key, val, ex = 1.8e6) {
 setStore(key, {v: val, t: Date.now() + ex})
}
export function getExpireStore (key) {
 var obj = getStore(key)
 if (obj.t > Date.now()) return obj.v
 else return false
}
export default {
 isObject,
 setStore,
 getStore,
 setSessionStore,
 getSessionStore,
 setExpireStore,
 getExpireStore
}

以上这篇vue之浏览器存储方法封装实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。