我使用以下代码创建一个可观察对象:
let disposeBag = DisposeBag()
let myJust = { (element: String) -> Observable<String> in
return Observable.create { observer in
observer.on(.next(element))
//observer.on(.completed)
return Disposables.create()
}
}
该代码来自 RxSwift 的示例代码。
如果我创建一个空的 Observable myJust
,稍后我尝试向它发送一个值:
myJust("🔴").on(.completed)
我收到以下错误:
error: value of type 'Observable<String>' has no member 'on'
最佳答案
你不能。 Observable
只能被观察到。如果你想推送值,你需要一个 Subject
。
Subject
既是 Observable
又是 Observer
,因此它可以发出和监听事件。
在 RxSwift 中,您还可以创建一个 Variable
,您可以将 Observable
绑定(bind)到它。
BehaviorSubject
的快速示例:
let subject = BehaviorSubject(value: 1)
subject.on(.Next(2))
subject.on(.Next(3))
subject.on(.Completed)
关于ios - 如何手动将下一个信号发送到 RxSwift 中的可观察对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39450565/