uniApp缓存
uniApp中内置缓存机制
在H5页面,缓存到LocalStorage中,小程序缓存到Storage
封装storage.js
/** * 判断字符串是否是json字符串 * 判断条件 1. 排除null可能性 2. 确保数据是对象或数组 * @param str 数据 * @returns Boolean */ const isJsonString = str => { // 判断字符串是否是json字符串 try { const toObj = JSON.parse(str); if (toObj && typeof toObj === 'object') { return true } } catch {} return false } export default { set(name, value) { if (value && typeof value == 'object') { //设置json缓存数据 uni.setStorageSync(name, JSON.stringify(value)); } else { //设置缓存数据 uni.setStorageSync(name, value); } }, get(name) { //获取缓存数据 var data = uni.getStorageSync(name); if (data) { if (isJsonString(data)) { //json字符串转对象 return JSON.parse(data); } return data; } return null; }, remove(name) { // 清除某项缓存 uni.removeStorageSync(name); }, clear() { // 清空缓存 uni.clearStorageSync(); } }
引入模块 main.js
import storage from '@/static/js/storage.js';
Vue.prototype.storage=storage;
在页面使用
this.storage.set('name','12312312'); // 缓存字符串 var obj = {name:'asd',type:'1'} this.storage.set('nameobj',obj) //缓存对象 console.log(this.storage.get('name')) //12312312 console.log(this.storage.get('nameobj')) //{name:'asd',type:'1'} this.storage.remove('name') //清除缓存name this.storage.clear() //清除所有缓存
分类:
uni-app开发
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通