微信小程序之数据缓存

开发中常用setStorageSync来实现本地数据缓存操作

(1)点击缓存案例:

  <button bindtap="toStorage">存储</button>

  // 本地存储
toStorage(){
// 获取用户数据存到本地
const appInstance = getApp()
console.log(appInstance.globalData);//打印用户信息
try {
wx.setStorageSync('userInfo', appInstance.globalData);
//弹框提示
wx.showToast({
title: '存储本地缓存数据成功',
icon: 'none',
duration:
});
} catch (e) {
//弹框提示
wx.showToast({
title: '存储本地缓存数据失败,请检查相关配置,是否联网等',
icon: 'none',
duration:
});
}
}

点击按钮缓存失败时提示:微信小程序---存储本地缓存数据-LMLPHP,点击按钮成功时提示微信小程序---存储本地缓存数据-LMLPHP

但日常开发里,像用户信息数据数据缓存,无需人工操作缓存,一般都是页面加载完毕后自动缓存。所以接下来将其修改下

关于app.js小程序生命周期和page.js页面生命周期,详情见下篇文章微信小程序~生命周期方法详解

微信小程序---存储本地缓存数据-LMLPHP

(2)自动缓存本地数据

页面生命周期

日常开发中,一般会把需要读取缓存的数据,放到onready函数里

①打开小程序后会依次执行onLoad,onReady和onShow方法

②前后台切换会分别执行onHide和onShow方法,

③小程序页面销毁时会执行 onUnload方法

  onReady:function(){
// 获取用户数据存到本地
const appInstance = getApp()
console.log(appInstance.globalData);//用户信息
try {
wx.setStorageSync('userInfo', appInstance.globalData);
//一般刚加载完毕后,数据缓存成功也不会有弹框提示,所以这里去掉
} catch (e) {
//失败时,弹框提示
wx.showToast({
title: '存储本地缓存数据失败,请检查相关配置,是否联网等',
icon: 'none',
duration:
});
}
}

此时页面加载完毕后,用户信息便会自动缓存到本地

微信小程序---存储本地缓存数据-LMLPHP

.

05-11 14:00