草庐IT

Reactivecocoa

全部标签

ios - ReactiveCococa : Module compiled with Swift 2. 3 Swift 3.0无法导入

我在mac10.12(Sierra)上使用carthagev0.18。购物车文件:github"ReactiveCocoa/ReactiveCocoa我得到了错误:用Swift2.3编译的模块不能在Swift3.0中导入:你知道怎么解决吗? 最佳答案 解决方案指定依赖项时没有versionrequirementinaCartfile,Carthage将检查最新版本(由git标签获取)。要查找ReactiveCocoa存储库的最新版本,请转到releasespage.在撰写本文时(2016年9月16日),最新版本是v4.2.2。4.2

ios - ReactiveCocoa 4,根据 UI 事件和验证正确发送我的 HTTP 请求

我试图理解ReactiveCocoa4的一些概念,但没有找到一种方法来根据登录表单的输入正确验证和发送请求。我当前的解决方案会在输入的每次有效更新时发送请求,这并不好。看来我需要使用Actions和CocoaActions来解决我的问题,但我不明白如何正确实现它们。这是我的代码示例:我希望在按下登录按钮并且登录和密码字段都不为空时发送登录请求,否则我只会显示错误。目前,当我修改输入字段时,生产者仍然活着并继续发送请求,这不太好......我想要一个关于如何正确执行它的例子:)登录View模型.swiftclassLoginViewModel{letlogin=MutableProper

ios - 最新的 ReactiveCocoa Carthage 错误 : No such module 'Result'

我正在将我的项目更新到Swift5Xcode10.3。在最新的ReactiveCocoa10.0.0中,以前的Swift版本一切正常已经尝试过:删除和更新所有carthage删除derivedData文件夹,清理并构建 最佳答案 Swift在版本5中将自己的Result类型添加到标准库中。因此,ReactiveSwiftremoveditsdependencyonthethird-partyResultlibraryithadpreviouslyused,并提供这些说明来更新您的代码:IfyouhaveusedResultonlya

ios - ReactiveCocoa 问题

我试图在我的项目中使用ReactiveCocoa来处理UITableView的填充。如果没有可用数据,当我加载数据时,我想将tableView.backgroundView的hidden属性设置为false。这是我到目前为止所拥有的:funcloadData(){letdataSource=tableView.dataSourceas!BlockedTableViewDataSourceletload=dataSource.load(currentUser)#RACSignalload.map{return($0as![AnyObject]).count>0}.startWith(tr

ios - Dwifft 和 ReactiveCocoa

我喜欢Dwifft,但我更喜欢将它与ReactiveCocoa一起使用,以帮助进一步降低我的CollectionViewController中的代码复杂性。目前,我有一个采用SignalProducer实例的辅助类其中T:Equatable(所以它适用于不同)。每次信号生成器发出一个新值时:self.data.producer.observeOn(UIScheduler()).on(next:{[unownedself]inguardletcollectionView=self.collectionViewelse{return}for(index,element)in$0.enume

ios - 如何在 ReactiveCocoa 4 中创建自定义信号?

我有以下设置,一个由GridViewCell组成的GridView。GridViewclassGridView:UIView{vargridViewCells:[GridViewCell]=[]lettapHandler:Position->()init(frame:CGRect,tapHandler:Position->()){self.tapHandler=tapHandlersuper.init(frame:frame)self.gridViewCells=createCells(self)addCellsToView(self.gridViewCells)}funcaddCel

swift - 将闭包作为参数传递时,ReactiveCocoa 保留循环

我在Swift中使用ReactiveCocoa如下:registerButton?.rac_signalForControlEvents(UIControlEvents.TouchUpInside).subscribeNextAs(registerButtonTapped)privatefuncregisterButtonTapped(button:UIButton){//Methodhere}这会创建一个保留周期。我知道解决方案如下:registerButton?.rac_signalForControlEvents(UIControlEvents.TouchUpInside).su

ios - 如何从 ReactiveCocoa 信号中获取 "old value"?

如果我像这样使用RACable:[RACAbleWithStart(self.myProp)subscribeNext:^(idx){//Dostuff}];我怎样才能访问myProp的旧值(在更改导致信号触发之前)?所以我可以像这样访问它:[RACAbleWithStart(self.myProp)subscribeNext:^(idx){//DostuffidnewValue=x;idoldValue=RAC_oldValue;}]; 最佳答案 我成功地使用了这个片段:[[objectrac_valuesAndChangesFo

ios - 如何从 ReactiveCocoa 信号中获取 "old value"?

如果我像这样使用RACable:[RACAbleWithStart(self.myProp)subscribeNext:^(idx){//Dostuff}];我怎样才能访问myProp的旧值(在更改导致信号触发之前)?所以我可以像这样访问它:[RACAbleWithStart(self.myProp)subscribeNext:^(idx){//DostuffidnewValue=x;idoldValue=RAC_oldValue;}]; 最佳答案 我成功地使用了这个片段:[[objectrac_valuesAndChangesFo

ios - 具有异步网络请求的 ReactiveCocoa 排序

我正在构建一个演示应用程序并试图符合ReactiveCocoadesignpattern越多越好。以下是该应用的作用:找到设备的位置每当位置键改变时,获取:当前天气每小时预报每日预报所以顺序是1)更新位置2)合并所有3个天气数据。我构建了一个WeatherManager单例,它公开了天气对象、位置信息和手动更新的方法。此单例符合CLLocationManagerDelegate协议(protocol)。位置代码非常基本,所以我将其省略。唯一真正感兴趣的是:-(void)locationManager:(CLLocationManager*)managerdidUpdateLocatio