问题标签 [reactive-swift]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
swift - 如何在 ReactiveSwift 中编写动作(“运行此列表中的第一个启用的动作”)
我有两个Action
具有相同输入/输出/错误类型的 s,我想将它们组合成一个Action
运行两者中的任何一个启用的单个(如果它们都启用,则使用任意决胜局)。
这是我的第一个失败的尝试:
这失败了,因为内部add.apply(input)
看不到 I checked ,所以它在错误类型周围add.isEnabled
包裹了一个额外的层。ActionError<>
(这可能是合法的,因为我不确定这种方法的线程安全性如何,或者可能是我们知道类型系统不知道的东西。)相应的类型错误是:
我应该怎么做?
ios - 如何使用 ReactiveSwift 和 Firebase 异步方法调用处理 SignalProducer?
我正在使用 ReactiveSwift 1.1.1、MVVM + Flow Coordinator 模式和 Firebase 作为后端开发一个带有 Swift 3 的 iOS 应用程序。我最近才开始适应 FRP,我仍在试图弄清楚如何将新功能集成到我现有的代码库中。
例如,我的模型使用 Firebase 的异步方法从 Web 下载缩略图,我想提供一个SignalProducer<Content, NoError>
订阅我的 ViewModel 类并观察是否已下载缩略图,然后更新 UI。
我也尝试过类似的方法Signal<Content, NoError>
,而我使用该Signal<Content, NoError>.pipe()
方法接收一个(observer, disposable)
元组,并将观察者保存为一个私有全局字段,以便从 Firebase 回调中访问它。
问题:
这是正确的方法还是我错过了什么?
如何在完成时发出内容对象?
更新:
经过几个小时的痛苦,我发现了如何设计 SingalProducer 来发出信号并从 ViewModel 订阅。
也许以下代码片段对其他人也有帮助:
也许有人可以验证上面的代码并说这是正确的方法。
reactive-swift - 反应式斯威夫特。压缩一系列信号产生器
我有一组信号生成器,它们从后端获取类似的对象,例如 [SignalProducer <
Object, NSError >
]。每次都完成后,我如何压缩它们以获取结果数组 [Object]?我知道 zip 运算符具有预定义的生产者数量,但事实并非如此,因为要发送的请求数量仅在运行时才知道。
reactive-cocoa - ReactiveCocoa:绑定到 Signal 或 SignalProducer 之间的区别?
绑定运算符 (<~) 接受一个BindingSource
参数,两者都Signal
符合SignalProducer
协议
我希望绑定到生产者的 UI 元素在生产者以某种方式启动之前不会“接收事件”,但情况似乎并非如此
IE
导致两个标签都更新。
这是预期的行为还是我误解了什么?
swift - 如何在 ReactiveSwift 中将 Signal 和 SignalProducer 合并为 Signal?
如何在 ReactiveSwift 中将 Signal 和 SignalProducer 合并为 Signal?
以下是我到目前为止所拥有的。我不知道如何获得Signal
在线 3。
我看过这个startWithSignal
方法
但它需要关闭。为什么它不能只返回一个信号?我不想为我需要信号的每个 signalProducer 创建另一个嵌套闭包。什么。
我是 ReactiveSwift 的新手,老实说,这是我遇到过的最令人困惑的框架
swift - ReactiveSwift:如何重新绑定(删除旧绑定,添加新绑定)?
我有一个必须能够定期重新绑定到新视图模型的视图:这意味着删除旧绑定以及连接新绑定。我有一个可行的解决方案,但它不是线程安全的,我想知道是否有更惯用的方法来做同样的事情:
swift - ReactiveCocoa - 具有一般错误处理的信号生成器序列
我有一个关于 Swift 3 的 ReactiveCocoa (v5) 的问题。在我的项目中,我有不同的服务。例如 api 或用于从磁盘保存或获取内容。这些服务正在返回 SignalProducer。我现在有一些类似调用不同服务的序列,这些服务相互依赖。这里的顺序:
- 调用服务获取密钥
- 使用 key 调用 api 和 service
- 获取数据表单 api(返回多个模型)
- 使用 first-model-service 保存第一个模型
- 使用 second-model-service 保存第二个模型
在我的序列中,我还必须将来自第二个服务调用的数据传递给模型保存。
此外,如果SignalProducer
序列中的一个发送错误,则整个序列将停止,并以错误作为参数调用回调。我不知道startWithFailed
这里的功能是否正确。
有没有人和我一样的情况,可以举个例子吗?我阅读了一些教程,但我无法弄清楚。
swift - 未设置可选 MutableProperty 的反应式 Swift 绑定?
因此,我最近开始尝试将 ReactiveSwift 合并到我的项目中,但我似乎无法弄清楚为什么当我尝试使用 <~ 运算符设置属性时,我的这一部分代码会给我一个编译错误。
所以这是我到目前为止所拥有的,
所以你可以在上面看到给我一个错误的行让我感到困惑,因为我已经将它设置为一个可选属性,所以我不明白为什么它说一个 nil 值是不兼容的。另外,如果有更好的方法,请告诉我,因为我发现很难找到快速反应可可的资源
swift3 - RACSubject 迁移到 ReactiveCocoa 5 (Swift 3)
我必须将应用程序从 ReactiveCocoa 4 迁移到 ReactiveCocoa 5(由于 Swift 3 迁移)
旧实现使用一些 RACSubject 实例来触发 (performOperationSubject.sendNext) 操作和处理 (didOperationSubject.subscribeNext) 结果
以及何时使用 MyClass 实例
不幸的是,RACSubject 在 ReactiveCocoa 5 (ReactiveSwift) 中不再存在
在这种情况下如何替换 RACSubject?
ios - 为什么 ReactiveSwift Action 只运行一次?
我想使用 ReactiveSwift 实现一个简单的登录功能。
这是我的 ViewController 代码:
视图模型:
当我将断点设置到该行时return MembershipManager.sharedInstance.signin(...
,仅当我按下登录按钮时它才被击中一次。之后,当我再次按下按钮时,什么也没有发生。
有谁知道原因?我刚开始只使用 ReactiveSwift。