cache.js 899 Bytes
const Cache = {
	keyPrev: 'yanghu_',
	// 设置缓存(expire为缓存时效)
	set(key, value, expire) {
		let data = {
			expire: expire ? (this.time() + expire) : '',
			value
		}
		if (typeof data === 'object')
			data = JSON.stringify(data)
		try {
			uni.setStorageSync(this.getKey(key), data)
		} catch (e) {
			return false
		}
	},
	// 获取缓存
	get(key) {
		try {
			let data = uni.getStorageSync(this.getKey(key))
			const {value, expire} = JSON.parse(data)
			if(expire && expire < this.time()) {
				uni.removeStorageSync(this.getKey(key))
				return false
			}else {
				return value
			}
		} catch (e) {
			return false
		}
	},
	// 获取当前时间
	time() {
		return Math.round(new Date() / 1000)
	},
	// 删除缓存
	remove(key) {
		if(key) uni.removeStorageSync(this.getKey(key))
	},
	// 获取缓存键名
	getKey(key) {
		return this.keyPrev + key
	}
}

export default Cache