如何使用 valueChanges 在 firebase 数据库中只读取一次数据?
How to use valueChanges to only read data once in firebase database?
我的 ionic 5 (Angular) 项目使用 Google firebase 数据库。
这是我用来从 firebase 数据库读取数据的示例代码。我只想读取数据一次。由于 valueChanges()
是一个可观察的,我想我每次使用它时都必须取消订阅。
constructor(db: AngularFireDatabase) {
this.tempsub = db.list('items').valueChanges().subscribe(data=>{...});
this.tempsub.unsubscribe()
}
在我的用例中我必须取消订阅吗?有没有更好的方案只读取一次firebase数据库的数据?
您可以使用 take
运算符来配置所需的发射数量。
使用 take(1)
将发出第一个值,然后完成并取消订阅。
db.list('items').valueChanges()
.pipe(take(1))
.subscribe(...);
我的 ionic 5 (Angular) 项目使用 Google firebase 数据库。
这是我用来从 firebase 数据库读取数据的示例代码。我只想读取数据一次。由于 valueChanges()
是一个可观察的,我想我每次使用它时都必须取消订阅。
constructor(db: AngularFireDatabase) {
this.tempsub = db.list('items').valueChanges().subscribe(data=>{...});
this.tempsub.unsubscribe()
}
在我的用例中我必须取消订阅吗?有没有更好的方案只读取一次firebase数据库的数据?
您可以使用 take
运算符来配置所需的发射数量。
使用 take(1)
将发出第一个值,然后完成并取消订阅。
db.list('items').valueChanges()
.pipe(take(1))
.subscribe(...);