前言 通过ReactiveCocoa(一)的学习,相信大家对ReactiveCocoa有了一些基本认识吧。下面就让我们来学习ReactiveCocoa的一些基本使用吧!...ReactiveCocoa基本使用 代替代理 在ReactiveCocoa(一)中讲到可以通过RACSubject代替代理,我们也可以通过rac_signalForSelector同样代替代理。...- (void)doneNextWithA:(NSString *)a andB:(NSString *)b { NSLog(@"请求完成,更新UI--a:%@,b:%@",a,b); } ReactiveCocoa
前言 在上篇文章中介绍了ReactiveCocoa的基础知识,接下来我们来深入介绍ReactiveCocoa及其在MVVM中的用法。...操作方法 bind(绑定)- ReactiveCocoa核心方法 ReactiveCocoa 操作的核心方法是 bind(绑定),而且也是RAC中核心开发方式。...:55.706 ReactiveCocoa进阶[4714:1552910] 原信号: 123 2017-01-03 16:36:56.842 ReactiveCocoa进阶[4714:1552910]...ReactiveCocoa进阶[4714:1552910] 原信号: 12345 2017-01-03 16:36:58.351 ReactiveCocoa进阶[4714:1552910] 长度大于3...36:51.595 ReactiveCocoa进阶[2443:667226] 收到错误信息:2 2017-01-04 14:36:51.596 ReactiveCocoa进阶[2443:667226]
前言 之前总听别人说什么Reactive Cocoa + MVVM,但是没有找到讲解Reactive Cocoa相关的资料。结果进入新公司,项目里面有部分代码使...
ReactiveCocoa基础 本文修改自最快让你上手ReactiveCocoa之基础篇 有关对 ReactiveCocoa 的看法可以看一下唐巧的这篇ReactiveCocoa 讨论会 ReactiveCocoa...简介 ReactiveCocoa(简称为RAC),是由Github开源的一个应用于iOS和OS开发的新框架,Cocoa是苹果整套框架的简称,因此很多苹果框架喜欢以Cocoa结尾。...导入ReactiveCocoa ReactiveCocoa的GitHub地址 Objective-C ReactiveCocoa 2.5版本以后改用了Swift,所以Objective-C项目需要导入2.5...pod 'ReactiveCocoa', '~> 2.5' end PS:新版本的CocoaPods需要加入 target 'YouProjectName' do ......#import #endif ReactiveCocoa常见类 RACSiganl 信号类 信号类,一般表示将来有数据传递,只要有数据改变
ReactiveCocoa网上资料很多,今天就介绍一下ReactiveCocoa简单的用法。...监听UITextField的输入文本 在没有使用ReactiveCocoa之前我们监听UITextField文本变化是这样做的 [textField addTarget:self action:@selector...UIControlEventEditingChanged]; -(void)changedTextField:(id)textField { NSLog(@"值是---%@",textField.text); } 使用了ReactiveCocoa...就有人会说MVVM,但是单独使用ReactiveCocoa也是可以,不一定有了ReactiveCocoa的就是MVVM。...项目中很少使用ReactiveCocoa,之前有人提到使用ReactiveCocoa如果出错了很难定位到代码错误。但是简单的使用还是可以了。比如监听UITextField。按钮点击事件啊。
目录: 一、了解函数响应式编程 二、ReactiveCocoa简介 三、ReactiveCocoa集成 四、理解什么是信号 五、从源码理解RAC的信号机制 六、本篇总结 一、了解函数响应式编程...二、ReactiveCocoa简介 ReactiveCocoa(简称RAC),Reactive表示响应式,Cocoa是苹果整个框架的简称,许多苹果框架都以Cocoa结尾。...三、ReactiveCocoa集成 RAC.5.0相对于之前版本对于自身项目结构进行了较大调整,被拆分ReactiveCocoa、ReactiveSwift、ReactiveObjC、ReactiveObjCBridge...集成方法同上,只不过将ReactiveObjc换成ReactiveCocoa。...其他参考链接: 1.ReactiveCocoa入门教程:第一部分 2.最快让你上手ReactiveCocoa之基础篇 3.这样好用的ReactiveCocoa,根本停不下来 4.函数式编程与面向对象的比较
最近一直在研究ReactiveCocoa,现在也来讲讲ReactiveCocoa中一些基础类的作用。...ReactiveCocoa作用 在我们iOS开发过程中,当某些事件响应的时候,需要处理某些业务逻辑,这些事件都用不同的方式来处理。...subscribeNext:^(id x) { NSLog(@"订阅者第二信号"); }]; //4.连接,激活信号 [connect connect]; ReactiveCocoa
5.NSMutableArray 因为NSMutableArray不支持KVO,所以用另外一个方式处理:
上一篇介绍了一下RAC订阅信号中,方法实现RACCompoundDisposable真正的订阅者类的相关介绍。 这一篇,将在订阅信号的方法中继续探究,当真正的...
RACCommand作为ReactiveCocoa基本组件之一,通常在项目开发过程中RACSignal与RACSubject组合使用就可以满足大部分的开发需求。
ReactiveCocoa是做什么的? ...引述自己学习的《最快让你上手ReactiveCocoa之基础篇》这篇博客里面的概述,说说 ReactiveCocoa 的作用; 在我们iOS开发过程中,当某些事件响应的时候,需要处理某些业务逻辑,这些事件都用不同的方式来处理...代表:ReactiveCocoa。 上面这么多,就把它的作用和它所用的编程思想做了一个类比和分析。...pod 'ReactiveCocoa', '~>4.0.2-alpha-1' end ReactiveCocoa 的使用: 三方开头头文件先行:#import "ReactiveCocoa" 一...学习链接给大家: 最快让你上手ReactiveCocoa之基础篇 ReactiveCocoa入门教程:第一部分 ReactiveCocoa入门教程: 第二部分
ReactiveCocoa (RAC) 是一个Cocoa框架,受Functional Reactive Programming启发。...介绍 ---- ReactiveCocoa来源于functional reactive programming(Input and Output)。
前言 在ReactiveCocoa 过程中,除去RACSignal和RACSubject这些信号类以外,有些时候我们可能还需要封装一些固定的操作集合。...RACCommand 在ReactiveCocoa 中是对一个动作的触发条件以及它产生的触发事件的封装。...RACCommand在ReactiveCocoa中算是很特别的一种存在,因为它的实现并不是FRP实现的,是OOP实现的。RACCommand的本质就是一个对象,在这个对象里面封装了4个信号。...RACSignal *executionSignals executionSignals是一个高阶信号,所以在使用的时候需要进行降阶操作,降价操作在前面分析过了,在ReactiveCocoa v2.5中只支持...美团博客上这篇ReactiveCocoa核心元素与信号流文章里面对activeExecutionSignals的变化引起的一些变化画了一张数据流图: ?
原文作者:溪浣双鲤 https://www.jianshu.com/p/51758229b4a5 一、对比原生KVO,初识ReactiveCocoa的KVO 我们先来看一段代码,通过触屏来动态修改视图背景色...copy]; NSRecursiveLock *objectLock = [[NSRecursiveLock alloc] init]; objectLock.name = @"org.reactivecocoa.ReactiveObjC.NSObjectRACPropertySubscribing...return proxy;} - (instancetype)init { self = [super init]; _queue = dispatch_queue_create("org.reactivecocoa.ReactiveObjC.RACKVOProxy
一、对比原生KVO,初识ReactiveCocoa的KVO * * * 我们先来看一段代码,通过触屏来动态修改视图背景色 @interface ViewController () @property (...copy]; NSRecursiveLock *objectLock = [[NSRecursiveLock alloc] init]; objectLock.name = @"org.reactivecocoa.ReactiveObjC.NSObjectRACPropertySubscribing...proxy; } - (instancetype)init { self = [super init]; _queue = dispatch_queue_create("org.reactivecocoa.ReactiveObjC.RACKVOProxy
上一篇整体分析了RAC的信号流程,这样对RAC的工作原理有了整体的认识。 接下来将逐步深入了解RAC实现的底层。
前言 ReactiveCocoa用GitHub推荐的方式比较麻烦,尝试改用Carthage进行导入 ? 官方的方法 方法 使用工具:carthage生成.framework文件。...github "ReactiveCocoa/ReactiveObjC" >= 2.5 4:在命令行执行命令carthage update 让它自动下载并生成.framework ?
在实际项目开发过程中,经常会在多处不同地方对同一信号进行订阅。比如:在网络请求时,收到返回数据要针对页面多处进行更新操作。 通常会出现以下RAC写法:
领取专属 10元无门槛券
手把手带您无忧上云