从Observabale FirestoreDocument获取数据

时间:2018-08-10 09:46:31

标签: angular firebase google-cloud-firestore real-time-data

我在变量下面声明了

userDetails$: AngularFirestoreDocument<any>;

及以下服务构造函数中的

this.userDetails$ = this.firestore.collection('users').doc('key');

如何从userdetails $获取实际数据?

谢谢

2 个答案:

答案 0 :(得分:0)

使用valueChanges并订阅可观察者。

 this.userDetails$.valueChanges().subscribe(value => {
    this.item= value 
  });;

答案 1 :(得分:0)

您需要调用valueChanges()snapshotChanges()才能将其转换为observable。如果您需要访问元数据,请使用snapshotChanges()

this.firestore.collection('users').doc('key').valueChanges()

this.firestore.collection('users').doc('key').snapshotChanges().pipe(
    map(a => {
        const data = a.payload.data();
        const id = a.payload.id;
        return { id, ...data };
    })
);

别忘了subscribe创建的观察对象。