Angularjs 火基对角火
我正在开发一个Angularjs 火基对角火,angularjs,angular,firebase,firebase-realtime-database,angularfire,Angularjs,Angular,Firebase,Firebase Realtime Database,Angularfire,我正在开发一个Angular应用程序,它与Firebase实时数据库相连。我目前正在使用访问Firebase数据库 在阅读了Vanilla Firebase和AngularFire文档,并实现了我的应用程序的某些部分后,我发现Firebase数据库所需的所有东西都可以在Vanilla Firebase的帮助下实现,而无需AngularFire的任何帮助 此外,AngularFire提供的资源数量与Vanilla Firebase相比也有限。那么,为什么我要使用AngularFire,而不是Van
Angular应用程序
,它与Firebase
实时数据库相连。我目前正在使用访问Firebase
数据库
在阅读了Vanilla Firebase
和AngularFire
文档,并实现了我的应用程序的某些部分后,我发现Firebase
数据库所需的所有东西都可以在Vanilla Firebase的帮助下实现,而无需AngularFire
的任何帮助
此外,AngularFire
提供的资源数量与Vanilla Firebase
相比也有限。那么,为什么我要使用AngularFire
,而不是Vanilla Firebase
,因为它有很多可用的资源?我无法理解这种情况
使用AngularFire
比使用Vanilla Firebase
有什么好处?AngularFire
嗯,angularfire是一种助手库。它应该通过提供绑定使您的生活更轻松,这些绑定是为了使angular和firebase之间的集成更加无缝而创建的
一个实际例子:
开发人员通常需要使用数组来显示数据。但是,firebase不以数组形式存储任何数据。相反,它使用类似JSON的结构。这就是说,为了让每个人都能更轻松地将数据作为数组从firebase检索,angularfire为您提供了$firebaseArray(),它本质上是从某个位置转换数据,并在数组(只读伪数组)中返回相同的数据
请注意,所有这些都可以通过使用vanilla firebase手动检索数据,然后将从firebase(作为对象)获得的数据转换为客户端的数组来实现
你应该在对你有意义的时候使用angularfire,如果它能让你的生活更轻松的话。这就是它的目的。如果你能通过使用vanilla firebase完成你所需要的一切,就没有理由让事情复杂化。我还应该指出,您可以同时使用firebase和angularfire。正如卡坦特在评论中提到的那样,这不是一个非此即彼的选择,因为两者配合得非常好。这意味着您可以将vanilla firebase用于更具体的用例,而将angularfire用于其他目的
总而言之,angularfire的所有功能都可以通过vanilla firebase实现,尽管它可能需要大量额外的代码。换句话说,angularfire构建在firebase之上,不会为您提供新的firebase功能。本质上,它使使用firebase和angular变得更加有趣和实用
角火2
Angularfire2是一个完全不同的故事,因为它实际上将RxJS可观测和其他反应模式与firebase集成在一起,所有这些在vanilla firebase中默认情况下都不可用
但在大多数情况下,它们都有相同的目的。Angularfire2也是firebase之上的一个抽象,它提供了实时绑定,旨在促进firebase和angular2之间的集成。此外,它还为您提供了以反应式方式使用firebase的可能性。这不是一个非此即彼的选择;两者都可以使用。如果AngularFire中的对象和列表绑定很有用,并且可以节省您的工作量,那么您可能需要使用它们。这样做并不意味着你不能同时使用Firebase SDK。我发现使用AngularFire优于Vanilla Firebase的一些好处是将角度变量与Firebase中定义的路径绑定。在更新te绑定变量时帮助处理应用和摘要循环的东西。但我并不完全理解。有人能解释一下这一部分并帮助我理解这一点吗?我在哪里可以找到更多关于angularfire2的文档?firebase网站上的示例还应包括以下内容:什么是香草firebase?你能给我提供它的链接吗?@KrishnaKarki Vanilla Firebase只是简单的Firebase,没有别的。香草用于独立库的情况。您可以查看Firebase官方文档。