【问题标题】:ReactiveCocoa: why rac_textSignal doesn't workReactiveCocoa:为什么 rac_textSignal 不起作用
【发布时间】:2017-06-20 14:42:04
【问题描述】:

为什么这不起作用:

[self.phoneTextField.rac_textSignal subscribeNext:^(NSString *text) {
    self.viewModel.textFieldText = text;
}];

虽然这很好用,即使点击了清除按钮:

RAC(self.viewModel, textFieldText) = RACObserve(self.phoneTextField, text);

?

【问题讨论】:

    标签: ios objective-c reactive-cocoa


    【解决方案1】:

    rac_textSignal 仅在 UIControlEventAllEditingEvents 触发时触发,并且不会发生这种情况。以下是两种情况的解决方法:

    [[RACSignal 
      merge:@[self. phoneTextField.rac_textSignal, RACObserve(self.phoneTextField, text)]] 
      subscribeNext:^(NSString* text) {
          // do something here
      }];
    

    BR,

    【讨论】:

    • 第二个选项似乎更短,并且在文本更改时也有效。
    • 这是真的:)
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-03-07
    • 2019-08-06
    • 2016-07-05
    • 2011-08-06
    相关资源
    最近更新 更多