MVVM+RAC 学习第一天

遇到的坑 (摘自 https://www.cnblogs.com/manji/p/4846591.html

独自学习RAC还是有一定的难度的,毕竟面对众多RAC的api要想完全理解下来还是挺困难的。
而且刚开始不熟悉的情况下很难针对某些特定的场景,想出比较合理的RAC处理方式(这句话是盗用
别人的,但是我也深有体会)。这里列一下我写这个demo时遇到的几个坑吧,希望能帮别人绕过这些
坑,也算是功德一件。

 1、ViewModel里用来保存数据的数组,不能使用NSMutableArray。原因是RAC是基于KVO的,
而NSMutableArray的Add和Remove方法并不会给KVO发送通知,因此对NSMutableArray进行
RACObserve时,并不会达到我们想要的结果。(同理其他Mutable的也都不能用)
2、ViewModel里给items赋值时,不能用_items=somearray,而是得用self.items。我开始
是想在viewmodel里定义一个readonly的items属性(理论上也应该是readonly的,因为
ViewController只负责从ViewModel拿数据而已),然后通过_items进行赋值,但是订阅了
viewmodel的items后死活收不到消息。我一直感觉这不科学,也许是我的打开方式不对,但是最终
都没有解决。这里希望知道的人能不吝赐教,在下感激不尽。
3、实现可以cancel的http请求时,不能用replay,replayLast,replayLazily。关于这3者
的区分可以https://www.cnblogs.com/zz-vv/p/4834042.html,我觉得分析的很详细。
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1-------- 走进前端 2-------- jQuery 3-------- CSS 4-------- A...
    依依玖玥阅读 2,357评论 0 34
  • 看到题目,首先要感谢一下我的父母,我一直觉得我是一个非常幸运的人,能在这样的家庭生长,同时我也是一个非常幸福的人,...
    8979af45a4a0阅读 311评论 0 1
  • 寒风袭骨日渐凉,梧桐泣雨泪凝霜。 当年比翼双飞燕,何故凭枝暗自伤。
    孤城子阅读 227评论 0 1
  • 往往每年这个时候,济南的晚上的风都会挺大,隔上几分钟就能听到一阵儿呼啸的风声,夹杂着旁边修路的大型机器的轰鸣,确实...
    安于情长_2f31阅读 628评论 0 0