ReactiveCocoa简介五:用信号封装异步API
2016-02-20 14:42
525 查看
接口如下
这个service有3个参数,用户名、密码和一个完成回调block。这个block会在登录成功或失败时执行。你可以在按钮点击事件的subscribeNext: blcok里直接调用这个方法
1、创建信号
使用RACSignal的createSignal:方法来创建信号。
这个block的返回值是一个RACDisposable对象,它允许你在一个订阅被取消时执行一些清理工作。当前的信号不需要执行清理操作,所以返回nil就可以了。
typedef void (^RWSignInResponse)(BOOL); @interface RWDummySignInService : NSObject - (void)signInWithUsername:(NSString *)username password:(NSString *)password complete:(RWSignInResponse)completeBlock; @end
这个service有3个参数,用户名、密码和一个完成回调block。这个block会在登录成功或失败时执行。你可以在按钮点击事件的subscribeNext: blcok里直接调用这个方法
1、创建信号
- (RACSignal *)signInSignal { return [RACSignal createSignal:^RACDisposable *(id subscriber){ [self.signInService signInWithUsername:self.usernameTextField.text password:self.passwordTextField.text complete:^(BOOL success){ [subscriber sendNext:@(success)]; [subscriber sendCompleted]; }]; return nil; }]; }
使用RACSignal的createSignal:方法来创建信号。
这个block的返回值是一个RACDisposable对象,它允许你在一个订阅被取消时执行一些清理工作。当前的信号不需要执行清理操作,所以返回nil就可以了。
相关文章推荐
- ReactiveCocoa简介四,Button的点击事件的实现
- ReactiveCocoa简介四,聚合信号
- ReactiveCocoa简介三,根据输入框的条件,改变输入框背景颜色
- ReactiveCocoa简介二,值的传递
- ReactiveCocoa简介一,什么是信号量和基本操作
- react native 安装指南
- React-Native OpenGL体验二
- React Native For Android On Windows
- ReactJS初步学习
- React Native-11.React Native TabBarIOS TabBarIOS.Item组件详解
- React.js组件的生命周期
- React 特别需要注意的地方
- react-native组件封装与传值
- React Native-10.React Native Image组件详解
- React-Native OpenGL体验一
- react-native组件封装与传值
- react-native组件传值与封装
- react-native启动异常,react-deep-force-update/.babelrc
- 使用codepush进行ReactNative热部署
- React等开发工具记录