FirebaseのListenerをRxSwiftで書いてみた

apple-swift1
リスナーを定義

import Foundation
import FirebaseDatabase
import RxSwift

extension Reactive where Base: FIRDatabaseReference {
func listenUpdate(gateEntity: GateEntity) -> Observable {
let rootRef = self
return Observable.create({ (observer: AnyObserver) -> Disposable in
rootRef.base.child(”uniqueKey”).observe(FIRDataEventType.value, with: {(snapshot) in
observer.on(.next(snapshot))
})
return Disposables.create()
})
}
}

呼び出し方

self.reference().rx.listenUpdate(gateEntity: gateEntity).subscribe(onNext: { snapshot in
検知したときの処理を記述
})

【スポンサーサイト】





【参考テキスト】

広告

コメントを残す

以下に詳細を記入するか、アイコンをクリックしてログインしてください。

WordPress.com ロゴ

WordPress.com アカウントを使ってコメントしています。 ログアウト / 変更 )

Twitter 画像

Twitter アカウントを使ってコメントしています。 ログアウト / 変更 )

Facebook の写真

Facebook アカウントを使ってコメントしています。 ログアウト / 変更 )

Google+ フォト

Google+ アカウントを使ってコメントしています。 ログアウト / 変更 )

%s と連携中