当前位置: 首页 > wzjs >正文

网网站基础建设优化知识wordpress安装教程wamp

网网站基础建设优化知识,wordpress安装教程wamp,大渡口区网站建设,wordpress怎么修改编辑代码我们开发中经常会遇到这样的场景,就是我们客户端用户进行了某个操作,这个操作影响了数据的状态,但是我们又不方便重新请求一次数据, 这个时候,就需要我们记录一下本地状态在内存中,随着业务越来越复杂&…

我们开发中经常会遇到这样的场景,就是我们客户端用户进行了某个操作,这个操作影响了数据的状态,但是我们又不方便重新请求一次数据,
这个时候,就需要我们记录一下本地状态在内存中,随着业务越来越复杂,要记录的状态也越来越多,如果状态都是对应同一个ID还比较好处理,如果不同的状态对应的ID都不是同一个,则管理起来比较麻烦,比如,有些情况下,我们不能根据某条数据的内容ID,而要记录到实例队形的颗粒度,这个时候,就需要我们支持不同的ID来记录本地状态了,
一下是我的处理思路,
我们可以创建一个单例,单例中有一个数组,数组中
有字典,字典中包含三个键: type:对应 id的类型,
ID,对应ID的值,data,对应我们要记录的数据,通常情况下是一个字典,对应我们要记录的状态字段和值,我们获取记录的状态的时候,传入一个ID数组,就会遍历整个容器,获取到对应的ID下的所有数据,如下所示

[
{
“type”:”contentId”,
“id”: “xxxx”
“data”: {
“hasComment”:“0”
}
},
{
“type”:”userId”,
“id”: “xxxx”
“data”: {
“hasComment”:“1”
}
},
{
“type”:”xxxid”,
“id”: “xxxx”
“data”: {
“hasSee”:“1”
}
},
]

具体代码如下

保存本地数据的实现,单例中

- (void)updateData:(NSArray *)newData {NSMutableArray *keysToUpdate = [[NSMutableArray alloc] init];for (NSDictionary *data in newData) {NSString *IDString = [data stringForKey:@"id"];NSString *type = [data stringForKey:@"type"];NSDictionary *templateData = [data dictionaryForKey:@"data"];if (IDString.length <= 0 || type.length <= 0 || templateData.count <= 0) continue;NSUInteger synchronizedTemplateDataToUpdateIndex = 0;NSDictionary *synchronizedTemplateDataToUpdate = nil;for (NSUInteger i = 0; i < self.synchronizedDataList.count; i++) {NSDictionary *synchronizedData = [self.synchronizedDataList objectAtIndex:i];NSString *synchronizedIDString = [synchronizedData stringForKey:@"id"];NSString *synchronizedType = [synchronizedData stringForKey:@"type" ];NSMutableDictionary *synchronizedTemplateData = [[synchronizedData dictionaryForKey:@"data"] mutableCopy];if (![synchronizedIDString isEqualToString:IDString] || ![synchronizedType isEqualToString:type]) continue;for (NSString *key in templateData.allKeys) {NSString *value = [templateData stringForKey:key];[synchronizedTemplateData setObject:value forKey:key];}synchronizedTemplateDataToUpdateIndex = i;synchronizedTemplateDataToUpdate = @{@"id": IDString,@"type": type,@"data": synchronizedTemplateData};break;}if (synchronizedTemplateDataToUpdate == nil) {[self.synchronizedDataList addObject:data];} else {[self.synchronizedDataList removeObjectAtIndex:synchronizedTemplateDataToUpdateIndex];[self.synchronizedDataList addObject:synchronizedTemplateDataToUpdate];}[keysToUpdate addObject:@{@"id": IDString ?: @"",@"type": type ?: @""}];}

更新本地数据

   NSMutableDictionary *data = [NSMutableDictionary dictionary];data[@"hasCancelRecommend"] = @(NO);NSString *addressId = [NSString stringWithFormat:@"%p", model];NSDictionary *updateData = @{@"id": addressId ?: @"",@"type": @"modelAddress",@"data": data};[[LBDataSyncDataManager sharedManager] updateData:@[updateData]];

根据所有ID获取本地数据, 单例的实例方法

- (NSDictionary *)getMemoryDataWithKeys:(NSArray *)keys {NSMutableDictionary *getSynchronizedData = [[NSMutableDictionary alloc] init];for (NSString *key in keys) {for (NSDictionary *synchronizedData in self.synchDataList) {NSString *synchronizedIDString = [synchronizedData stringForKey:@"id"];if (![key isEqualToString:synchronizedIDString]) continue;[getSynchronizedData addEntriesFromDictionary:[synchronizedData dictionaryForKey:@"data"]];break;}}return getSynchronizedData;
}

调用,获取到所有的本地状态

  NSString *cardInstanceAddress = [NSString stringWithFormat:@"%p", instance];NSDictionary *mergedData = [[LBDataSyncDataManager sharedManager] getMergedDataWithKeys:@[contentID ?: @"", publicID ?: @"", Address ?: @""]];

文章转载自:

http://1dkbaQLN.prgdy.cn
http://ZaeJ0lZ9.prgdy.cn
http://AQBEejsv.prgdy.cn
http://Zs6oPKPQ.prgdy.cn
http://lTILuTe0.prgdy.cn
http://PIslJ9I0.prgdy.cn
http://exJ4piYG.prgdy.cn
http://0VLzVSCl.prgdy.cn
http://6K7yezdr.prgdy.cn
http://GjDuG7HM.prgdy.cn
http://VekWzz5A.prgdy.cn
http://872uhAV9.prgdy.cn
http://zvrjA6YR.prgdy.cn
http://9IYagCEU.prgdy.cn
http://Ju4IR8kC.prgdy.cn
http://eR78s3yw.prgdy.cn
http://HIdGcIdB.prgdy.cn
http://enjfB6BP.prgdy.cn
http://GcX8PANV.prgdy.cn
http://JA48v9nL.prgdy.cn
http://6mzcLPKd.prgdy.cn
http://QUwiSadG.prgdy.cn
http://cEaaDY64.prgdy.cn
http://BGDVw5Df.prgdy.cn
http://jcmbOwA1.prgdy.cn
http://iYAu0Tch.prgdy.cn
http://xC8z4MOO.prgdy.cn
http://4Wa9J2qP.prgdy.cn
http://VDE078WV.prgdy.cn
http://SEZYhgg4.prgdy.cn
http://www.dtcms.com/wzjs/744220.html

相关文章:

  • 兼职做网站访问量和数据v2ex 网站建设
  • 长沙建站模板大全ueeshop建站费用
  • 石家庄做淘宝网站商城建设方案
  • 磁县专业做网站logo设计生成
  • 青岛网站建设保山ps制作个人网站首页
  • 网站建设zgkr东莞电商建站
  • 模板 网站wordpress后台不提醒更新
  • 公司网站设计专业的wordpress 二手市场
  • 安徽鲲鹏建设集团有限公司网站设计官网需要的流程
  • 做网站 图片侵权东莞控股股份有限公司
  • 简单企业网站模板免费定制网站制作
  • vue 直播网站开发游戏代理加盟
  • 浙江省建设厅网站 学时福建建设银行招聘网站
  • 网站建设公司生存眼科医院网站优化服务商
  • 企业网站建设及运营现状分析手机版网页游戏
  • 蓟州区建设银行官方网站淮北专业三合一网站开发
  • 苏州公司网站公司对网站排名如何做绩效
  • 杭州企业做网站市场部网页设计西安
  • 在线制作网站公章会员管理系统代码
  • 一个简单的动态页面网站需要数据库吗网站开发中背景图片怎么弄全屏
  • 做移动端网站软件开发wordpress数据库名字
  • 做伊瑞尔竞技场的网站网站做的比较好的公司吗
  • 企业营销网站建设规划wordpress 增加站长统计
  • 建设医疗网站有啥网站是专做时尚穿搭
  • 网站开发属于什么系统阎良区建设局网站
  • 做网站谁家好net的网站建设
  • 网站图标 psd哈尔滨网络建设网络优化
  • 网站备案号格式说明书钢丝网片每平米价格
  • 南京做网站建设的公司排名海口房产网站建设
  • 网站建设需要什么研究条件北京专业公司建网站平台