gpt4 book ai didi

swift - RxSwift - 谁是观察者?

转载 作者:行者123 更新时间:2023-11-30 11:04:31 25 4
gpt4 key购买 nike

我最近才开始学习Rxswift。从那以后,有一个问题一直困扰着我。以此代码片段为例:

class MyClass {
var v = Variable("")
var bag = DisposeBag()
func subscribe() {
let ob = v.asObservable()
ob.subscribe(onNext: { (value) in
print("Value changed: " + value)
}).disposed(by: bag)
}
}

令我困扰的是,在subscribe()方法的场景中,真正的观察者在哪里/谁?就对象而言,这里有充当可观察对象的 ob,但我在任何地方都看不到观察者对象。

有人可以照亮我的心吗?

最佳答案

上面示例中的观察者实际上是您提供给 subscribe(onNext:) 函数的闭包

当然,该闭包的持续时间取决于您的 DisposeBag 的生命周期:当您的 MyClass 实例死亡时,bag死亡,因此闭包也死亡。因此,您可能会发现有人将您的 MyClass 实例称为“观察者”。

关于swift - RxSwift - 谁是观察者?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52872888/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com