RACChannelTo

<code>
RACChannelTo(self, name) = RACChannelTo(self.model, name);
RACChannelTo(self, blurb) = RACChannelTo(self.model, blurb);
RACChannelTo(self, filmType, @(ASHRecipeFilmTypeColourNegative)) = RACChannelTo(self.model, filmType, @(ASHRecipeFilmTypeColourNegative));
</code>
這是一個(gè)雙向綁定,self.name和self.model.name任何一個(gè)改變,另外一個(gè)也會(huì)改變。第三個(gè)參數(shù)是默認(rèn)值,出現(xiàn)nil就用這個(gè)來(lái)代替。有了它,model和ViewModel就可以雙向同步。

<code>
RACChannelTerminal *channelA = RACChannelTo(self, valueA);
RACChannelTerminal *channelB = RACChannelTo(self, valueB);
[[channelA map:^id(NSString value) {
if ([value isEqualToString:@"西"]) {
return @"東";
}
return value;
}] subscribe:channelB];
[[channelB map:^id(NSString value) {
if ([value isEqualToString:@"左"]) {
return @"右";
}
return value;
}] subscribe:channelA];
[[RACObserve(self, valueA) filter:^BOOL(id value) {
return value ? YES : NO;
}] subscribeNext:^(NSString
x) {
NSLog(@"你向%@", x);
}];
[[RACObserve(self, valueB) filter:^BOOL(id value) {
return value ? YES : NO;
}] subscribeNext:^(NSString
x) {
NSLog(@"他向%@", x);
}];
self.valueA = @"西";
self.valueB = @"左";
</code>

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 我個(gè)人非常推崇ReactiveCocoa,它就像中國(guó)的太極,太極生兩儀,兩儀生四象,四象生八卦,八卦生萬(wàn)物。Rea...
    liuyun333閱讀 364評(píng)論 0 0
  • 轉(zhuǎn)至元數(shù)據(jù)結(jié)尾創(chuàng)建: 董瀟偉,最新修改于: 十二月 23, 2016 轉(zhuǎn)至元數(shù)據(jù)起始第一章:isa和Class一....
    40c0490e5268閱讀 1,775評(píng)論 0 9
  • 1、禁止手機(jī)睡眠[UIApplication sharedApplication].idleTimerDisabl...
    DingGa閱讀 1,144評(píng)論 1 6
  • 1.ReactiveCocoa常見(jiàn)操作方法介紹。 1.1 ReactiveCocoa操作須知 所有的信號(hào)(RACS...
    萌芽的冬天閱讀 1,042評(píng)論 0 5
  • 很多時(shí)候我懷疑我的人生在自信與自卑之間是不是就缺少兩瓶啤酒的后勁,兩三年前我曾與一位同學(xué)探討過(guò)半瓶紅酒之后慢慢附上...
    暮雨秋風(fēng)閱讀 546評(píng)論 2 2