iOS开发缓存的实际运用:避免多余的数据请求
来源:互联网 发布:自制搞笑视频软件 编辑:程序博客网 时间:2024/06/05 03:18
点击上方“iOS开发”,选择“置顶公众号”
关键时刻,第一时间送达!
什么是多余的数据请求?
如GIF所示:
“休闲食品”被点击了两次,两次都出现了loading也就是说两次都请求了数据。第二次请求数据就是多余的。
这里的流程是:
点击左边的cell,传一个id到后台,获取到数据后展示。
为避免多余的数据请求,我使用的解决方案是:
请求数据之前先在缓存数组中寻找缓存的model,如果有,就不请求数据,直接用缓存的,如果没有,再请求数据,并且将model放到缓存数组里。
1.需要一个用来缓存model的数组
/** 右边模块的model缓存数组 */
@property (nonatomic, strong) NSMutableArray *itemsModelArray;
2.请求数据前看看有没有缓存的,有就直接用
// 从缓存数组里找model,如果有就直接用
for (CQBoutiqueItemsModel *itemsModel in self.itemsModelArray) {
if ([itemsModel.catID isEqualToString:model.ID]) {
self.itemsView.model = itemsModel;
return;
}
}
//------- 请求数据 ------//
如何判断是否有缓存的model,我的方法是遍历缓存数组查看是否有model的id与传入的id一致的。
3.如果没有缓存的,请求数据,并缓存
//------- 请求数据完成 ------//
// 赋值model
self.itemsView.model = itemsModel;
// 放入缓存数组
[self.itemsModelArray addObject: itemsModel];
使用缓存后的效果如下:
只要是请求过的就不会再请求了。
注意:
刷新的时候记得清空缓存数组,要不然刷新就失去意义了。
来自:无夜之星辰
链接:http://www.jianshu.com/p/c8275969a9e6
iOS开发整理发布,转载请联系作者授权
【点击成为Android大神】
- iOS开发缓存的实际运用:避免多余的数据请求
- iOS开发 | UITableView的无数据占位图在项目中的实际运用
- 实际开发中关于autorelease的运用
- 实际开发运用的工具类优化。
- fusioncharts的实际运用
- AcionBar的实际运用
- 实际开发使用中缓存的使用
- iOS 带缓存,带网络监控的数据请求
- javascript 缓存请求的数据
- 实际开发运用的工具类优化(二)。
- 在实际软件开发中运用到的工具
- hash算法的实际运用
- 避免输出多余空格的小技巧
- iOS开发中对于数据缓存路径的讲解
- iOS开发 清空沙盒路径下的缓存数据
- ios创建请求设置的缓存策略
- 缓存的运用
- ios开发数据缓存
- 自己关于一些selvert的笔记
- 漫漫人生路
- 机器学习第四个算法ANN(人工神经网络)
- 关键活动相关求解
- Oracle 中的一些重要V$ 动态性能视图,系统视图和表
- iOS开发缓存的实际运用:避免多余的数据请求
- 定积分的基本性质5 区间可加性
- SpringMVC @requestBody和requestParam
- 程序员加薪的技巧
- 服务器配置
- (对象类作为参数的方法)
- docker教程(5)--compose
- 深入了解MyBatis参数
- PRML第二章笔记