使用缓存技术优化代码
问题:接口的返回数据量太大了
解决:使用缓存技术优化
微信小程序官方文档:数据缓存
存:wx.setStorageSync(key, data)
取:wx.getStorageSync(key)
不存在类型转换的操作,存什么类型的数据进去,获取时就是什么类型
- 0 把接口中的数据存入本地存储中
wx.setStorageSync(key, data)
- 1 获取本地存储中的数据
wx.getStorageSync(key)
- 2 判断本地存储中有没有旧数据
- 2.1 没有旧数据-直接发送新请求获取数据
- 2.2 有旧数据-判断旧数据是否过期
定义过期时间 10s 改为 5min
if (Date.now() - Cates.time > 1000 * 10)
- 2.2.1 有旧数据但过期了-重新发送新请求获取数据
- 2.2.2 有旧数据也没过期-使用本地存储中的旧数据
pages/category/category.js
import {
request } from "../../request/request.js";
Page({
data: {
// 左侧的菜单数据
leftMenuList: [],
// 右侧的商品数据
rightContent: [],
// 被点击的左侧菜单
currentIndex: 0,
// 右侧内容的滚动条距离顶部的距离
scrollTop: 0
},
// 接口的返回数据
Cates: [<