创建信号量RACSignal

xiaoxiao2021-02-28  115

1,每隔1秒发信号

    RACSignal *repeatSignal = [[RACSignal interval:1 onScheduler:[RACScheduler mainThreadScheduler]] repeat];

2.观察self.time属性,属性值改变时并发出信号。     RACSignal *timeSignal = RACObserve(self, time);

3,信号绑定

 a = b + c 如果 b 或者 c 的数值发生变化,a 的数值会同时发生变化;

//电话号码 RAC(self.viewModel,mobileNum) = self.mobileNumTF.rac_textSignal; //验证码 RAC(self.viewModel,smsCode) = self.smsCodeTF.rac_textSignal; RAC(self.label,text) = combineSignal;

4,检测按钮点击事件

    btn.rac_command = [[RACCommand alloc] initWithSignalBlock:^RACSignal *(id input) {         [Person new];                  return [RACSignal empty];     }];

5,之前见过把string和string互相绑定的,没见过把布尔值和NSNumber相绑定的

RACSignal *passworkSignal = self.mobileNumTF.rac_textSignal;     RACSignal *confirmSignal = self.smsCodeTF.rac_textSignal;     RAC(self.btn, enabled) = [RACSignal combineLatest:@[passworkSignal,confirmSignal] reduce:^(NSString *password, NSString *confirm){                  return @(password.length >0 && confirm.length >0);     }];

转载请注明原文地址: https://www.6miu.com/read-74679.html

最新回复(0)