私は、AngularFire2ライブラリが文書化されておらず、使いにくいことを発見しました。私はangular2アプリより、バニラJSファイアベースのコードを使うのではなく、誰かが賛否両論をクリアする手助けをすることができるかどうか疑問に思っていましたか? vanilla JSバージョンを使用して、私が使用しているかもしれないangular2の機能を無効にしていますか?私はなぜ別のものを使用するのか混乱していますが、個人的にバニラJSの1つはwaaaayが文書化され、豊富な機能を備えています。私の頭の中で!AngularFire2とFirebase JS
0
A
答えて
0
バニラバージョンを直接使用することができます。観察可能なものであっても、観察可能であり、約束はうまく機能します。たとえば:。
Observable.of(new firebase.auth.GoogleAuthProvider())
.switchMap(o => firebase.app().auth().signInWithPopup(o))
.subscribe()
AngularFire2の主な利点は、(ヘッド傷つけて観測されている。私はあなたがrxjsを学び、約束の上にそれらを使用して起動をお勧め私はバニラJS SDKを使用しています、しかし、私は何に基づいてrefObservable
を作成しました。AngularFire2はFirebaseObservablesでないことは単純、しかし、私のニーズに十分です:
unwrapSnapshot(snapshot)
は、スナップショットをチェックし、適切な結果(配列、オブジェクト、文字列、など...)を返す簡単な関数である
export function refObservable(ref): Observable<firebase.database.DataSnapshot> {
return Observable.create(observer => {
let fn;
try {
fn = ref.on('value', snapshot => {
observer.next(unwrapSnapshot(snapshot));
});
} catch (error) {
observer.error(error);
}
return() => ref.off('value', fn);
});
};
私はそれを使用します。 firebaseからデータを読み込みます。作成/更新/削除操作私は直接行います:
Observable.of(checkUserPermission())
.switchMap(() => {
return firebase.database().ref('what/ever').remove();
});
これは、ストレージ、メッセージング、認証などの他のモジュールと似ています...私はAngularFire2よりもFirebase SDKを好んでいます。私はまた、サービス/ Webワーカーでの使用がより簡単であることを発見しました。
- もしあなたがすでにvanilla sdkを知っているなら、それにつけてください。
- データベースの読み取り/書き込みと基本認証のみが必要な場合は、AngularFire2を使用する方が簡単です。
- firebase機能をさらに制御する必要がある場合は、JS SDKを使用します。
関連する問題
- 1. Angular2とFirebase(AngularFire2)
- 2. Firebase/angularfire2:
- 3. Ionic 2&Angularfire2 + Firebase
- 4. Firebase&AngularFire2「afAuth」「Appcomponent」
- 5. AngularFire2でのFirebaseストレージの使用
- 6. firebaseからの例外をキャッチ - AngularFire2
- 7. AngularFire2を使用したIonic Firebaseアプリ
- 8. イオン3のAngularFire2でFirebaseデータを照会
- 9. イオン2のAngularFire2でFirebaseデータを照会
- 10. AngularFire2でFirebaseのパーミッションエラーを処理する
- 11. Firebase sdk3とAngularfire2の認証電子メール/パスワード
- 12. Firebase/Angular2:FirebaseのレコードをAngularFire2でインクリメントする方法は?
- 13. FireBase JSとHTML AUTH
- 14. angularfire2 + firebaseのionic2プロジェクトで、typesfriptでangularfire2でobservablesオブジェクトの詳細を取得
- 15. は、私がこのJSONとFirebaseデータベースを持っているAngularfire2
- 16. ionic3 + firebase + angularfire2 facebook emailヌルメールアドレスごとに複数のアカウントがある
- 17. 共有アクセスAngularFire2/FirebaseとNodeJSの間の相談
- 18. AngularFire2 orderByKeyとstartAt
- 19. Angularfire2とデータファンアウト
- 20. FirebaseとVue Jsのライフサイクルフック
- 21. FirebaseとノードJSの角度?
- 22. angularfire2
- 23. Firebase JS Authenticstion cookies
- 24. AngularFire2でFirebaseのリストを正しく照会する方法は?
- 25. Firebase Angularfire2データベースにユーザが存在するかどうかをチェック
- 26. environment.ts内またはモジュール内のAngularfire2 firebase設定?
- 27. 各ngfor LoopのFirebaseに同じ値を表示しない - Angularfire2
- 28. Angular2、angularfire2、Typescriptを持つFirebaseオブジェクトからデータを取得する
- 29. Firebaseを入手する方法。AngularFire2のユーザー
- 30. firebase uidを複数の場所にプッシュする - Angularfire2 Ionic 3
ご回答ありがとうございます。私はrxJSの周りに頭を抱えようとしていましたが、より高度な使い方で、いくつかの "コンセプト"に苦しんでいます。特にObservablesをサービスで使用しています。 戻り値this.af.database.object( "users /" + auth.uid + "/ public"); }} getUser(){ return this.getAuth()。switchMap((auth)=> { } ; } getAuth(){ return this.af.auth.map((auth)=> {return auth}); } ' –
コメントから達成しようとしていることを伝えるのは難しいです。あなたの問題について別の質問を投稿してください。 RxJSの場合は、開始すると圧倒的になることがあります。ちょうどそれを取る、オンラインの多くのリソースがあります - コース/チュートリアルなど... – Sasxa