问题标签 [rx-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.
ios - RxSwift 中的 RxJava onErrorResumeNext 运算符的类比是什么?
如果在 RxSwift 中遇到错误,我需要发出一系列项目。在 JAVA 中,可以使用“onErrorResumeNext”操作符来完成。但我在 Swift 中找不到相同的运算符或其替代品。
ios - RxSwift 中 RACCommand 的等价物是什么?
我有一个视图和一个视图模型。视图包含一个按钮,每次用户按下它时,我都希望通知视图模型。我还希望在第一个视图模型收到事件时通知第二个视图模型。
因此,点击事件将按如下方式传播:
我可以通过绑定button.rx_tap
来设计它viewModel1.onButtonTapped()
,但是由于我想viewModel2
订阅也获取事件,我需要某种可观察的来接收动作并传播它。我相信就是RACCommand
这样。
我如何使用 RxSwift 实现它?
ios - 将对象发送给 RxSwift Action 的订阅者
我曾经在 Objective-C 中使用 ReactiveCocoa,但后来我改用 RxSwift,因为我发现它比 RAC4 更容易理解。但是,我曾经在 RAC 中做过一些有用的事情:
这允许我订阅命令的执行状态以及执行信号,以便我可以观察调用返回的数据。
我不确定如何使用 RxSwift Action 重现这一点。我只能订阅其执行的 observable:
但是我必须创建一个额外PublishSubject
的来发送我的响应数据:
有没有办法在 RxSwift 中使用 Action 创建类似的模式?
ios - RxSwift 过滤器变量数组
您好我正在尝试了解 RxSwift 库以编写更好的功能代码。
目前我陷入了一个非常基本的问题。可以说我得到了这个类型的变量Variable<[CiteModel?]>
:
现在我想从allCites
包含特定文本的数组中过滤所有引用并将它们添加到shownCites
.
这是我尝试过的,但它无法编译,因为我的过滤器块内部$0
不是[CiteModel?]
我 CiteModel?
所期望的。你能向我解释我做错了什么吗?
执行上述代码时出错:
swift - 使用 RxSwift 的通用转换方法问题
我有这个结果数据类型,它包含一个类型和一个进度
这AnyObject
需要转换成一个Mappable
结构(ObjectMapper),所以因为我有几个这样的 Mappable 结构,所以我想实现这样的东西,一个我可以使用的通用映射:
上面的定义似乎是错误的,因为无法编译:Cannot explicitly specialize a generic function
我在这里做错了什么?
swift - 在 RxSwift 中合并两个通知观察者
我有这段代码:
它应该监听任何一个指定的通知并在任何一个被触发时进行处理。
但是,这不会编译。我收到以下错误:
那我应该如何将这两个信号合并为一个呢?
ios - 网络调用后绑定到 UIRefreshControl
我是 RxSwift 的新手,我想知道如何能够“被动地”使用 UIRefreshControl 和 UITableView 而不是创建目标的常规方式,并手动调用beginRefreshing()
and endRefreshing()
。
例如,假设我正在从 API 加载一些字符串:
MyAPI
发送对某些字符串值的请求,如何绑定refreshControl
到调用getData()
并在完成(或出错)网络请求时停止刷新?我需要绑定到refreshControl.rx_refreshing吗?
ios - UICollectionViewController 的正确 MVVM 架构是什么
我正在使用 RXSwift 和 MVVM 为 iPad 制作应用程序。
我有一个带有 UICollectionView 和 ViewModel 的 UIViewController,它充当数据源和 collectionView 的委托。
收集单元格的部分功能是当点击按钮以显示弹出框时。现在使用 iOS 9 中更新的弹出框功能(可能更早),您需要在视图控制器中正常显示视图,并修改 popoverPresentationController。
现在,据我所知,您无法从 UICollectionViewCell 呈现 UIViewController。说得通。
但我认为这样做的唯一方法是拥有一个指向 ViewController 的委托。
查看类图(附加),viewModel 必须在单元格出列时设置委托。要做到这一点,ViewModel 必须知道要设置什么 ViewController 作为委托,我相当肯定这与 viewModel 的观点相悖。根据 MVVM(对于 iOS),视图模型不应该知道视图控制器。视图控制器可以知道视图模型。
所以我的问题是在 MVVM 之后执行此操作的最佳方法是什么?如果它需要将 dataSource/Delegate 移动到不同的类,我完全赞成。
swift - RxSwift PublishSubject 在初始化时无意触发
我正在尝试使用 PublishSubject 转发按钮点击。然而,这个 PublishSubject 会在初始化时触发,这会干扰我的逻辑。这就是我正在做的事情:
(此初始化行将触发第一个 Next 事件)
然后在按钮点击动作上:
然后我像这样订阅它:
有没有办法在不触发初始化时发布的第一个“下一个”事件的情况下做到这一点?
干杯!
ios - subscribeNext 和 bindNext 的区别
我正在使用 RxSwift,想知道 subscribeNext 和 bindNext 有什么区别?
感谢您的输入。