如何使用AngularFire2在Firebase中创建JSON树和嵌套节点



AngularFire2 v5没有合适的文档,所以我不知道该从哪里学习,但这里只针对Firestore。我不使用firestore,我使用Firebase实时数据库。https://github.com/angular/angularfire2/tree/master/docs

然而,我对它还很陌生,我正在研究如何将数据存储在一个集合中,看起来像这样:

nepal-project-cffb1: 
users: 
userid: 
email: "lajmis@mail.com"
score: 1

我的功能现在看起来是这样的:

this._db.list("users/" + "id").set({
email: this.user,
score: this.score
})

但它不起作用,我得到了Expected 2 arguments, but got 1.错误。有很多语法,比如.ref.list,我不知道该用哪一种。

AngularFire指南中有一整节专门介绍RTDB,所以我对没有真正文档的说法感到困惑。通常,您会使用valueChanges()来创建一个列表观察器,如本文所述,以供阅读,而set((在本文中已涵盖。

因此,正如该文档所示,您需要传递要修改的记录的密钥,以及调用它时要更改的数据。

this._db.list("users").set("id", {...});

但是,如果您不监视集合,您也可以直接使用db.object:

this._db.object("users/id").set({...});

AngularFire可能不太直观的一个方面是,它主要是一种适配器模式,旨在消除Angular模型和Firebase服务器之间传输数据的一些样板。

如果你没有同步数据(下载本地副本(,那么没有理由在这里使用AngularFire。您可以直接调用Firebase SDK,避免订阅远程端点的开销:

firebase.database().ref("users/id").set({...});

最新更新