/** * 缓存操作 * */ import config from '@/config' /** * 获取缓存 key */ function _key(key) { return `${config.prefix}${key}` } /** * 获取缓存时间 key */ function _expKey(key) { return `${config.prefix}${key}_exptime` } /** * 获取缓存 * * key 键名 * def 为空时默认数据 */ export function get(key, def = null) { const value = uni.getStorageSync(_key(key)) const exptime = Number(uni.getStorageSync(_expKey(key))) if (!exptime || exptime > new Date().getTime()) { return value || def } return def } /** * 设置缓存 * * key 键名 * value 键值 * sec 缓存时间(秒) */ export function set(key, value, sec = 0) { uni.setStorageSync(_key(key), value) if (sec > 0) { uni.setStorageSync(_expKey(key), new Date().getTime() + sec * 1000) } else { uni.removeStorageSync(_expKey(key)) } } /** * 移除缓存 * * key 键名 */ export function remove(key) { uni.removeStorageSync(_key(key)) uni.removeStorageSync(_expKey(key)) } /** * 清空缓存 */ export function clear() { uni.clearStorageSync() } export default { get, set, remove, clear }