美文网首页
ReactiveCocoa笔记1

ReactiveCocoa笔记1

作者: Young_Blood | 来源:发表于2016-05-23 12:11 被阅读16次

    RACSignal 简单使用

    • 订阅信号
     // RACSignal使用步骤: 1.创建信号  2.订阅信号 3.发送信号
        
        // 1.创建信号 (冷信号)
        RACSignal *signal = [RACSignal createSignal:^RACDisposable *(id<RACSubscriber> subscriber) {
            
            // 3. 发送信号
            // didSubscribe调用:只要一个信号被订阅就会调用
            // didSubscribe作用:发送数据
            [subscriber sendNext:@"哈哈"];
            
            return nil;
        }];
        
        // 2.订阅信号 (热信号)
        [signal subscribeNext:^(id x) {
            //
            NSLog(@"%@", x);
        }];
    
    • 取消订阅信号
    // 1.创建信号
        RACSignal *signal = [RACSignal createSignal:^RACDisposable *(id<RACSubscriber> subscriber ) {
            
    //        _subscriber = subscriber;
            
             // 3.发送信号
            [subscriber sendNext:@"123"];
    
            return [RACDisposable disposableWithBlock:^{
               // 只要信号取消订阅就会来这
                // 清空资源
                NSLog(@"信号被取消订阅了");
            }];
        }];
        
        // 2.订阅信号
        RACDisposable *disposable = [signal subscribeNext:^(id x) {
            
            NSLog(@"%@",x);
            
        }];
        // 1.创建订阅者,保存nextBlock
        // 2.订阅信号
        
        // 默认一个信号发送数据完毕们就会主动取消订阅.
        // 只要订阅者在,就不会自动取消信号订阅
       // 取消订阅信号
        [disposable dispose];
    

    相关文章

      网友评论

          本文标题:ReactiveCocoa笔记1

          本文链接:https://www.haomeiwen.com/subject/kyjarttx.html