- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 where 子句查询 Firestore 集合,并订阅了 snapshotChanges。根据文档,我应该为每个添加、修改和删除的元素获取一个事件。
我得到了添加和修改的文件,但我从来没有得到删除的文件。
这是我的代码示例:
this.db
.collection<Test>('test', ref => ref.where('someid', '==', someid))
.snapshotChanges()
.subscribe(async snapshot => {
for (const element of snapshot) {
switch (element.type) {
case 'added':
// Works fine
break;
case 'modified':
// Works fine
break;
case 'removed':
// Never triggered
break;
}
}
});
我假设这是因为我正在使用 where。有没有人遇到过这个?
最佳答案
事实证明,对于 AngularFirestore,您需要使用 stateChanges 来获得我正在寻找的行为。
这是解释 snapshotChanges 和 stateChanges 之间区别的文档:
https://github.com/angular/angularfire/blob/master/docs/firestore/collections.md
关于typescript - Firestore snapshotChanges DocumentChangeType "removed"从未发送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61365277/
我有以下代码来从 Cloud Firestore 检索一些用户信息 - 它从用户文档的子集合中获取用户所属的挑战列表,然后使用这些 ID 从顶层收集完整的挑战信息挑战文档。 当我删除挑战时,我会将其从
我正在尝试查询一个集合并根据另一个查询返回更改数据结果。 我的聊天结构是这样的: let chat = { id: "userId1" + "userId2", lastMessage: ""
我正在处理一个 Angular Firebase 项目,我需要在其中过滤我的数据库并获取键值。目前,我在我的服务代码中使用 valueChanges() 方法(在 getUnreadBooks 和 g
此函数由构造函数调用。有人可以向我深入解释它的作用吗? initializeItems(){ this.travelList$ = this.plsdala.getTravelList() .sn
我正在使用 where 子句查询 Firestore 集合,并订阅了 snapshotChanges。根据文档,我应该为每个添加、修改和删除的元素获取一个事件。 我得到了添加和修改的文件,但我从来没有
我正在使用 combineLatest 合并来自 Firestore 的 3 个不同查询。但是,我不想使用 valueChanges(),我想使用 snapshotChanges()。 const n
当我尝试在 Angular 5/Firebase5 应用程序中订阅 AngularFireList 时,出现以下错误。 zone.js:192 Uncaught TypeError: Object(.
嗨,我有一个非常奇怪的行为。 我正在迭代一些文档并设置一些 promise ,即在获取文档时更新 UI。 然而,虽然 promise 是原子的,但 firestore/AngularFire 会等待所
最近 AngularFire 如何处理对象/列表以及在整个应用程序中引用对象的方式发生了变化,我们遇到了一些严重的问题。 首要的是如何旧的AngularFireObject & AngularFire
我在使用 AngularFire2 的 Angular 应用程序中有以下代码。 typescript : constructor(db: AngularFirestore) { this.bo
我是一名优秀的程序员,十分优秀!