簡體   English   中英

如何手動將下一個信號發送到RxSwift中的observable?

[英]How to manually send next signal to a observable in RxSwift?

我使用以下代碼創建一個observable:

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 s。 如果你想推送價值,你需要一個Subject Subject既是Observable又是Observer因此它可以發出和監聽事件。 在RxSwift中,您還可以創建一個可以將Observable綁定到的Variable

BehaviorSubject快速示例:

let subject = BehaviorSubject(value: 1)
subject.on(.Next(2))
subject.on(.Next(3))
subject.on(.Completed)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM