swift - 更新 BehaviorRelay 属性的值
问题描述
当我尝试设置一个值时,出现错误:
无法分配给属性:“值”是仅获取属性
var value: BehaviorRelay<Any?>
var unpackedValue: Any? {
get {
return value.value
}
set {
value.value = newValue // error
}
}
解决方案
在BehaviorRelay
您需要用来accept(_ event: Element)
发送新值的属性上
var unpackedValue: Any? {
get {
return value.value
}
set {
value.accept(newValue)
}
}
接受
event
并将其发送给订阅者
推荐阅读
- python - turtle 没有属性 register_shape、listen、ontimer、onkey 等
- java - 有没有办法修复应该返回由 ResultSet 组成的字符串的测试?
- excel - 在集合中找不到 vba msaccess tabledef 项目
- optimization - 如何在 CPLEX 中的流控制中设置更大的间隔
- reactjs - Create-React-App 项目中的 TailwindCSS,错误需要 PostCSS 8
- pandas - 需要解决方案:OSError: [WinError 193] %1 不是有效的 Win32 应用程序
- angular - intl-tel-input 设置同一个国家时触发 'countrychange' 事件
- r - R优化对数似然
- c++ - 在 CMAKE 中为库目标生成 protobuf 文件
- kubernetes - 除了 /stats/summary 之外,还有其他方法可以获取节点的“fs”指标吗