如何从另一个变量或 Observable 观察一个变量?

How to observe a Variable from another Variable or Observable?

假设我有一个var id = Variable<Int>(0)。我想从另一个名为 team (var team = Observable<Team>) 的 Variable 或 Observable 观察它的变化。团队可观察对象将被视图控制器观察到,并将在那里更新 UI 。因此,id 变量仅服务于 create/update(通过创建 Team(id: id) )团队可观察值。

我一直在尝试多种方法,例如 combineLatestsubscribe,但我总是遇到编译错误:

Closure cannot implicitly capture a mutating self parameter

怎么回事?

您的 Team(id:) 实例很可能是按值(值类型)而不是按引用(引用类型)传递的结构,因此它无法在离开主线程时捕获 self .请参阅 swift programming guide

中的 "Classes and Structures"

将您的结构更改为 Class,它应该会按预期工作: