web-dev-qa-db-ja.com

Firebase vs AngularFire

Firebaseリアルタイムデータベースに接続されているAngular Appで作業しています。現在、Firebaseデータベースにアクセスするために AngularFire を使用しています。

Vanilla FirebaseおよびAngularFireのドキュメントを読んで、アプリの一部を実装した後、Firebaseデータベースに必要なすべてのことは、AngularFireの助けを借りなくてもVanilla Firebaseの助けを借りて達成できることがわかりました。

また、AngularFireは、Vanilla Firebaseと比較して、限られた数のリソースのみを提供します。それで、Vanilla Firebaseの代わりにAngularFireを使用したいのはなぜですか?このシナリオを回避することはできません。

Vanilla FirebaseよりもAngularFireを使用する利点は何ですか?

26

Angularfire

まあ、angularfireは一種のヘルパーライブラリです。 angularとfirebaseの間の統合をよりシームレスにするために作成されたバインディングを提供することにより、あなたの生活を楽にするはずです。

実用的な例:

開発者は通常、データを表示するために配列を使用する必要があります。ただし、firebaseはデータを配列形式で保存しません。代わりに、JSONのような構造を使用します。とは言っても、全員が配列としてfirebaseからデータを取得するのを簡単にするために、anglefireは$ firebaseArray()を提供します。これは基本的に特定の場所からのデータを変換し、配列内の同じデータを返します(読み取り専用の擬似配列)。

Vanilla firebaseを使用して手動でデータを取得し、(オブジェクトとして)firebaseから取得したデータをクライアント側の配列に変換するだけで、これらすべてを実行できることに注意してください。

自分にとって理にかなっているとき、そしてそれがあなたの人生を楽にするならば、アンギュラーファイアを使うべきです。それが目的です。 Vanilla firebaseを使用するだけで必要なすべてを達成できる場合、物事を複雑にする理由はありません。また、firebaseとangularfireを同時に使用できることも指摘しておく必要があります。コメントでカータントが言及したように、どちらも非常にうまく機能するため、どちらか一方の選択肢ではありません。つまり、Vanilla firebaseをより具体的なユースケースに使用し、angularfireを他の目的に使用できます。

全体として、angularfireでできることはすべてVanilla firebaseでも可能ですが、追加のコードが必要になる場合があります。つまり、angularfireはfirebaseの上に構築されており、新しいfirebase機能を提供しません。基本的に、angularでfirebaseを使用すると、より楽しく実用的になります。

Angularfire2

Angularfire2は、RxJSオブザーバブルと他のリアクティブパターンを実際にfirebaseと統合しているため、まったく異なるストーリーです。これらはすべて、Vanilla firebaseでデフォルトでは使用できません。

ただし、ほとんどの場合、両者は同じ目的を果たします。また、Angularfire2はfirebase上の抽象化であり、firebaseとangular2の統合を容易にするためのリアルタイムバインディングを提供します。さらに、反応的な方法でfirebaseを操作する可能性を提供します。

30