小程序
小游戏
企业微信
微信支付
扫描小程序码分享
大家好,我想实现这样的需求
1。第一次请求接口返回的数据放到缓存
2。第二次以上接口请求时判断缓存数据是否跟接口数据一样,相同时用缓存数据,不同时才用接口数据赋值
请教大家这样的需求怎么做?
3 个回答
加粗
标红
插入代码
插入链接
插入图片
上传视频
把老数据存到缓存,然后每次请求新数据时对比(如:比较id),如果有不同,把新数据更换,如相同,不修改。
你好,麻烦通过点击下方“反馈信息”按钮,提供出现问题的。
你是怎样解决的 我也想做个类似的
数据先排序然后转为字符串判断是否相等
数据是一个数组,我用下面的方法,但是一直跳转到!=里的条件里,不跳转到else方法
if (wx.getStorageSync('home_swipers') != res.data.data) {
wx.setStorageSync('home_swipers', res.data.data); //设置焦点图缓存
that.setData({
swipers: res.data.data,
adSwiperCurrent: 0
})
} else {
swipers: wx.getStorageSync('home_swipers'),
};
找到了,
[1,2,3].sort().toString() == [2,3,1].sort().toString();//相等
数组根据首字母排序后再转成字符串进行比较
谢谢。
不客气
关注后,可在微信内接收相应的重要提醒。
请使用微信扫描二维码关注 “微信开放社区” 公众号
把老数据存到缓存,然后每次请求新数据时对比(如:比较id),如果有不同,把新数据更换,如相同,不修改。
你是怎样解决的 我也想做个类似的
数据先排序然后转为字符串判断是否相等
数据是一个数组,我用下面的方法,但是一直跳转到!=里的条件里,不跳转到else方法
if (wx.getStorageSync('home_swipers') != res.data.data) {
wx.setStorageSync('home_swipers', res.data.data); //设置焦点图缓存
that.setData({
swipers: res.data.data,
adSwiperCurrent: 0
})
} else {
that.setData({
swipers: wx.getStorageSync('home_swipers'),
adSwiperCurrent: 0
})
};
找到了,
[1,2,3].sort().toString() == [2,3,1].sort().toString();//相等
数组根据首字母排序后再转成字符串进行比较
谢谢。
不客气