Angularfire - 如何使用snapshotChanges()应用'where'条件 Angularfire是一个用于Angular应用的库,它提供了一些与Firebase集成的功能。其中一个功能是使用snapshotChanges()方法来监听
创始人
2024-10-24 19:01:42
0
import { AngularFirestore, AngularFirestoreCollection } from '@angular/fire/firestore';
import { Observable } from 'rxjs';
import { map } from 'rxjs/operators';

constructor(private firestore: AngularFirestore) {}

getFilteredData(): Observable {
  const collection: AngularFirestoreCollection = this.firestore.collection('collectionName', ref => ref.where('field', '==', 'condition'));

  return collection.snapshotChanges().pipe(
    map(actions => {
      return actions.map(a => {
        const data = a.payload.doc.data();
        const id = a.payload.doc.id;
        return { id, ...data };
      });
    })
  );
}

在上面的代码中,我们首先导入AngularFirestore和AngularFirestoreCollection服务,并在构造函数中注入AngularFirestore。

然后,我们使用collection()方法来获取Firestore集合的引用,并传递一个回调函数给它。在回调函数中,我们使用where()方法来设置筛选条件。在这个例子中,我们筛选出字段值等于'condition'的文档。

接下来,我们将snapshotChanges()方法应用于集合引用,并使用pipe()方法将其转换为可观察对象。

在pipe()方法中,我们使用map()操作符来处理每个文档的快照。在这个例子中,我们通过使用map()操作符来遍历每个快照,并返回一个包含文档ID和数据的新对象。

最后,我们返回过滤后的文档集合作为Observables。

相关内容

热门资讯

透视app!智星菠萝辅助怎么买... 透视app!智星菠萝辅助怎么买,hhpoker透视脚本(详细辅助微扑克教程)在进入智星菠萝辅助怎么买...
aapoker猫腻!wpk用什... aapoker猫腻!wpk用什么辅助器(透视)都是真的是有挂(详细辅助AA德州教程);小薇(透视辅助...
透视存在!wpk辅助器是真的吗... 透视存在!wpk辅助器是真的吗,哈糖大菠萝软件下载(详细辅助必备教程)亲,关键说明,wpk辅助器是真...
微扑克辅助器ios!德州免费辅... 自定义德州免费辅助神器app系统规律,只需要输入自己想要的开挂功能,一键便可以生成出微扑克专用辅助器...
德扑之星有猫腻!微扑克机器人代... 德扑之星有猫腻!微扑克机器人代打俱乐部(透视)切实真的有挂(详细辅助必备教程)是一款可以让一直输的玩...
透视有挂!wpk脚本是什么,h... 透视有挂!wpk脚本是什么,hhpoker德州牛仔视频(详细辅助系统教程)1、操作简单,无需注册,只...
德扑起手牌胜率图!poker有... 德扑起手牌胜率图!poker有没有外挂(透视)固有是真的有挂(详细辅助科技教程)是一款可以让一直输的...
透视挂透视!智星菠萝辅助怎么买... 透视挂透视!智星菠萝辅助怎么买,wepoker私人局透视教程(详细辅助解密教程)1、用户打开应用后不...
德州之星插件!wpk辅助nzt... 德州之星插件!wpk辅助nzt(透视)起初有挂(详细辅助教你攻略);小薇(透视辅助)致您一封信;亲爱...
wepower有外挂!wepo... wepower有外挂!wepower系统规律(透视)起初真的有挂(详细辅助高科技教程)1、许多玩家不...