23

我是反应式编程的新手。我已经浏览了 Reactive Cocoa 的文档,但无法意识到RACAble(),RACObserve()RACBind().

请帮助我通过一些示例代码片段来理解这些方面。

我认为RACAble()替换为RACObserve()一些选项/参数。如果我不正确,请在这方面纠正我。

RACObserve() skip:类似于RACAble()? _

4

1 回答 1

35

我认为这里造成混乱的一大原因是ReactiveCocoa团队在 3 个月前发布了v2.0,其中有很多重大变化。这是一个很棒的版本 - 并且具有一些令人惊叹的功能,但这确实意味着您将在网络上找到的大部分信息现在已经过时了。

对于您的具体观点:

  1. RACAble 已替换为 RACObserve
  2. RACBind 已替换为 RACChannelTo

RACObserve用于从对象和键路径创建信号,换句话说,它允许您获取常规属性并将它们“提升”到 ReactiveCocoa 世界中。它是 KVO 的便捷替代品。

RACChannelTo提供了一种双向绑定机制。换句话说,您可以保持两个属性同步。一个很好的例子是,如果你想在你的视图控制器或一些模型类中拥有一个属性,绑定到 UIKit 控件上的一个属性。

您可能会遇到的另一个宏是RAC,它提供单向绑定。换句话说,它将根据信号的最新值设置给定属性的值。

于 2013-12-04T08:44:51.730 回答