MVVM+RAC 學(xué)習(xí)第一天

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

獨自學(xué)習(xí)RAC還是有一定的難度的,畢竟面對眾多RAC的api要想完全理解下來還是挺困難的。
而且剛開始不熟悉的情況下很難針對某些特定的場景,想出比較合理的RAC處理方式(這句話是盜用
別人的,但是我也深有體會)。這里列一下我寫這個demo時遇到的幾個坑吧,希望能幫別人繞過這些
坑,也算是功德一件。

 1、ViewModel里用來保存數(shù)據(jù)的數(shù)組,不能使用NSMutableArray。原因是RAC是基于KVO的,
而NSMutableArray的Add和Remove方法并不會給KVO發(fā)送通知,因此對NSMutableArray進(jìn)行
RACObserve時,并不會達(dá)到我們想要的結(jié)果。(同理其他Mutable的也都不能用)
2、ViewModel里給items賦值時,不能用_items=somearray,而是得用self.items。我開始
是想在viewmodel里定義一個readonly的items屬性(理論上也應(yīng)該是readonly的,因為
ViewController只負(fù)責(zé)從ViewModel拿數(shù)據(jù)而已),然后通過_items進(jìn)行賦值,但是訂閱了
viewmodel的items后死活收不到消息。我一直感覺這不科學(xué),也許是我的打開方式不對,但是最終
都沒有解決。這里希望知道的人能不吝賜教,在下感激不盡。
3、實現(xiàn)可以cancel的http請求時,不能用replay,replayLast,replayLazily。關(guān)于這3者
的區(qū)分可以https://www.cnblogs.com/zz-vv/p/4834042.html,我覺得分析的很詳細(xì)。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 1-------- 走進(jìn)前端 2-------- jQuery 3-------- CSS 4-------- A...
    依依玖玥閱讀 2,424評論 0 34
  • 看到題目,首先要感謝一下我的父母,我一直覺得我是一個非常幸運的人,能在這樣的家庭生長,同時我也是一個非常幸福的人,...
    8979af45a4a0閱讀 356評論 0 1
  • 寒風(fēng)襲骨日漸涼,梧桐泣雨淚凝霜。 當(dāng)年比翼雙飛燕,何故憑枝暗自傷。
    孤城子閱讀 235評論 0 1
  • 往往每年這個時候,濟南的晚上的風(fēng)都會挺大,隔上幾分鐘就能聽到一陣兒呼嘯的風(fēng)聲,夾雜著旁邊修路的大型機器的轟鳴,確實...
    安于情長_2f31閱讀 689評論 0 0

友情鏈接更多精彩內(nèi)容