AngularFire - 如何将Firestore文档映射到valueChanges的数组上?
创始人
2024-10-24 19:01:38
0

可以使用AngularFire的valueChanges方法和rxjs的map操作符来将Firestore文档映射到一个数组上。下面是一个示例代码:

首先,确保已经安装了AngularFire和rxjs:

npm install firebase @angular/fire rxjs --save

然后,在你的Angular组件中导入必要的依赖:

import { Component } from '@angular/core';
import { AngularFirestore } from '@angular/fire/firestore';
import { map } from 'rxjs/operators';

接下来,注入AngularFirestore服务,并使用valueChanges方法获取Firestore文档的数据:

export class YourComponent {
  documentsArray: any[];

  constructor(private firestore: AngularFirestore) {}

  ngOnInit() {
    this.firestore.collection('your-collection').valueChanges().pipe(
      map(documents => {
        this.documentsArray = documents.map(document => {
          return {
            id: document.payload.doc.id,
            ...document.payload.doc.data()
          };
        });
      })
    ).subscribe();
  }
}

在上面的代码中,我们使用map操作符将获取到的文档数据映射到一个新的数组上。在map操作符中,我们使用了payload属性来获取文档的id和数据,并将它们合并到一个新的对象中。最后,将新的数组赋值给documentsArray属性。

现在,documentsArray属性将包含Firestore文档的数据。你可以在组件的模板中使用它来展示数据。

希望对你有所帮助!

相关内容

热门资讯

红龙扑克辅助器!红龙扑克电脑模... 红龙扑克辅助器!红龙扑克电脑模拟器,(红龙扑克)真是真的有挂(详细辅助工具教程)是一款可以让一直输的...
微扑克辅助软件!微扑克有保险吗... 微扑克辅助软件!微扑克有保险吗,(微扑克游戏)其实是有挂(详细全自动机器人教程);一、微扑克辅助软件...
德扑自定义!德扑线上创建房间,... WePoker透视辅助版本稳定性对比与推荐‌:德扑自定义!德扑线上创建房间,德扑之星ai代打原来是有...
德扑之星比赛!德扑软件决策,德... 德扑之星比赛!德扑软件决策,德扑开发真是是真的有挂(详细ai代打教程);亲真的是有正版授权,小编(透...
德州ai辅助软件!德扑之星开桌... 德州ai辅助软件!德扑之星开桌怎么设置,德扑之星ai软件其实有挂(详细功能教程);德州ai辅助软件软...
aapoker透明挂!wepo... 【福星临门,好运相随】;aapoker透明挂!wepoke有软件吗(Wepoke是真的)本来是真的有...
德扑ai软件!德扑人工智能软件... 德扑ai软件!德扑人工智能软件,德扑之星内部都是真的有挂(详细有挂吗教程);超受欢迎的稳赢小游戏,经...
微扑克有辅助挂!微扑克有辅助挂... 微扑克有辅助挂!微扑克有辅助挂吗,(微扑克苹果版)都是存在有挂(详细有辅助挂教程);是一款可以让一直...
we辅助poker德之星!wo... 1、we辅助poker德之星!wopoker游戏辅助器(wepoke)本来存在有挂(详细透明挂教程)...
红龙扑克辅助!红龙扑克是正规的... 红龙扑克辅助!红龙扑克是正规的吗,(红龙扑克)确实真的有挂(详细辅助教程);是一款可以让一直输的玩家...