jjzjj

SignalProducer

全部标签

ios - 将委托(delegate)回调转换为 SignalProducer 事件?

我有一个委托(delegate)对象。有6个委托(delegate)回调通知委托(delegate)有关事物的状态。我有一个MySpecialEvent代表这些状态的快速枚举。你能帮我弄清楚如何正确初始化SignalProducer吗?并将委托(delegate)调用挂接到Producernext实例化此委托(delegate)对象时的事件?我的期望是(如果这是错误的请纠正我)信号生成器将是公共(public)的producer委托(delegate)对象的属性。然后我可以获得对该生产者的引用,传递它并基本上以react方式处理其他地方的事件。最初我虽然可以在委托(delegate)对

ios - react swift : How to write a Task Scheduler

我正在尝试创建一个调度程序来消耗一些数据。调度器必须能够:每次应该手动使用数据时发送一个事件每次在上次消费后一段时间后自动消费数据时发送一个事件我用MutableProperty模拟了手动消耗letconsume=MutableProperty()我正在尝试使用SignalProducer对自动消耗进行建模lettimer=SignalProducer通过组合这两个生产者的最新值,我可以在第一时间获得我需要使用的数据SignalProducer.combineLatest(consume.producer,timer).take(first:1).map(){_inreturn()}这

ios - 如何将单个 SignalProducer 绑定(bind)到多个 UI 组件?

我正在使用Swift、ReactiveSwift和ReactiveCocoa。假设我有一个SignalProducer,有没有办法让多个UI组件在Event时更新?是生产出来的吗?例如。letsp=SignalProducer=//...label1.reactive.text我目前面临的问题是SignalProducer我一使用就开始了运算符(operator)。因此,生产者被调用了两次。当生产者是网络请求时,这是不可取的。 最佳答案 您可以将一个单独的MutableProperty绑定(bind)到SignalProducer,

swift - 如果信号已经发生,如何观察信号并立即接收到 `next` 事件?

我正在尝试包装在网络请求后初始化对象的API调用。我不希望网络请求发生在每个新观察者身上,所以据我所知,我不应该使用SignalProducer。但是,通过使用单个Signal,只有第一次使用它时才会收到next事件,而任何较新的订阅者都不会收到当前值。我应该怎么做?我可能在RAC上做了一些根本性的错误。extensionSparkDevice{staticfunccreateMainDeviceSignal()->Signal{returnSignal{sinkinSparkCloud.sharedInstance().getDevices{(sparkDevices:[AnyObj

swift - 如何组合多个 SignalProducers?

假设我在数组中有一堆SignalProducer:[SignalProducer]我如何将它们组合起来得到一个SignalProducer等待所有这些并获得所有Car?SignalProducer用例:向端点http://cardatabase.com/:car_id发起网络请求,获取一堆汽车ID,从而获得多个Car对象。问题是URLSession函数一次只能为一个Car获取一个SignalProducer。问题是如何将它们中的许多组合起来。(编辑:哎呀,这让我想起了很多Haskell中的sequenceA。我可以在ReactiveSwift中做类似的事情吗?)

objective-c - 如何在 ReactiveCocoa 5 中将 RACSignal 转换为 SignalProducer?

在ReactiveCocoa4中,我们可以使用toSignalProducer()将RACSignal转换为SignalProducer。ReactiveCocoa5中没有这个方法,那么我们如何做同样的事情呢? 最佳答案 使用bridgedSignalProducer()在ReactiveObjCBridge:someSignal.toSignalProducer()成为bridgedSignalProducer(from:someSignal)这会产生一个SignalProducer.不同于RAC4的startWithNext()

objective-c - 如何在 ReactiveCocoa 5 中将 RACSignal 转换为 SignalProducer?

在ReactiveCocoa4中,我们可以使用toSignalProducer()将RACSignal转换为SignalProducer。ReactiveCocoa5中没有这个方法,那么我们如何做同样的事情呢? 最佳答案 使用bridgedSignalProducer()在ReactiveObjCBridge:someSignal.toSignalProducer()成为bridgedSignalProducer(from:someSignal)这会产生一个SignalProducer.不同于RAC4的startWithNext()

ios - MVVM 通用网络架构

我使用ModelViewViewModel范例开发iOS应用程序来构建我的ViewController并表示它们的数据。结合ReactiveCocoa是一个强大的工具;ViewController变得不那么臃肿,View模型更容易测试,并且存在明确的关注点分离。我遇到的这个特定架构的一个问题是,与MVC一样,仍然没有明确的位置或方式来构建网络代码。举以下简单的例子:classHomepageViewModel{varposts:MutableProperty=MutableProperty([])funcfetchPosts()->SignalProducer{returnSignal

ios - MVVM 通用网络架构

我使用ModelViewViewModel范例开发iOS应用程序来构建我的ViewController并表示它们的数据。结合ReactiveCocoa是一个强大的工具;ViewController变得不那么臃肿,View模型更容易测试,并且存在明确的关注点分离。我遇到的这个特定架构的一个问题是,与MVC一样,仍然没有明确的位置或方式来构建网络代码。举以下简单的例子:classHomepageViewModel{varposts:MutableProperty=MutableProperty([])funcfetchPosts()->SignalProducer{returnSignal

swift - 如何在 ReactiveCocoa 3 和 4 中进行基本绑定(bind)

我最近一直在阅读有关ReactiveCocoav3的资料,但我正在为设置基本内容而苦苦挣扎。我已经阅读了变更日志、测试、少数SO问题以及ColinEberhardt就该主题撰写的文章。但是,我仍然缺少有关基本绑定(bind)的示例。假设我有一个显示当天菜单的应用程序。该应用程序使用RAC3和MVVM模式。模型(菜单)该模型有一种简单的方法来获取今天的菜单。至于现在,这不做任何网络请求,它基本上只是创建一个模型对象。mainCourse属性是一个String。classfuncfetchTodaysMenu()->SignalProducer{returnSignalProducer{s
12