swift - RxSwift - 在事件中更改 PublishSubject 中的特定对象
问题描述
struct Contact : Codable, Hashable {
var id : String
...
}
我用来PublishSubject
将数据提供给UITableView
let contacts : PublishSubject<[Contact]> = PublishSubject()
而当另一个视图控制器上的值发生变化时,我想更改数组中的特定值。
我想更改Contact
具有特定 ID 的对象。
contacts.filter {$0.id == contactId}[0].someKey = someValue
我怎样才能用 RxSwift 做到这一点?
解决方案
了解 PublishSubject 不包含任何状态,因此您无法更改其中的任何内容。相反,您从发布主题发出一个新数组,其中包含一个具有新值的新联系人。
在您的代码中的某个地方,您正在调用onNext(_:)
该主题(或将其连接到正在执行此操作的 Observable。我们需要查看该代码以帮助您解决问题。
推荐阅读
- c# - 请求对象上的必填字段未强制执行
- powerbi - 如何提取字符串中的每个数字(PowerBI)?
- r - r - 将函数应用于向量时遇到问题
- autodesk-forge - 调用 executeUserFunction 失败,错误为 {"instanceTree":null,"maxTreeDepth":0}
- c# - 使用 MRTK 和 Hololens 1 围绕一个点捏合和旋转
- maven - 每次 chrome 更新最新版本时,如何在不添加 chrome web 驱动程序属性的情况下运行 selenium 脚本
- angular - 不使用公共 IP 在同一 IIS 中的 Angular Web 调用 API
- mysql - 向主键添加 auto_increment 功能
- apache-kafka - Confluent平台:连接忽略属性文件
- android - Android Camera2 API,如何使用转换矩阵使预览图像覆盖整个屏幕?