Firebase
リアルタイムデータベースに接続されているAngular App
で作業しています。現在、Firebase
データベースにアクセスするために AngularFire を使用しています。
Vanilla Firebase
およびAngularFire
のドキュメントを読んで、アプリの一部を実装した後、Firebase
データベースに必要なすべてのことは、AngularFire
の助けを借りなくてもVanilla Firebaseの助けを借りて達成できることがわかりました。
また、AngularFire
は、Vanilla Firebase
と比較して、限られた数のリソースのみを提供します。それで、Vanilla Firebase
の代わりにAngularFire
を使用したいのはなぜですか?このシナリオを回避することはできません。
Vanilla Firebase
よりも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は、RxJSオブザーバブルと他のリアクティブパターンを実際にfirebaseと統合しているため、まったく異なるストーリーです。これらはすべて、Vanilla firebaseでデフォルトでは使用できません。
ただし、ほとんどの場合、両者は同じ目的を果たします。また、Angularfire2はfirebase上の抽象化であり、firebaseとangular2の統合を容易にするためのリアルタイムバインディングを提供します。さらに、反応的な方法でfirebaseを操作する可能性を提供します。