gpt4 book ai didi

typescript - Firestore snapshotChanges DocumentChangeType "removed"从未发送

转载 作者:行者123 更新时间:2023-12-04 12:36:17 24 4
gpt4 key购买 nike

我正在使用 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。有没有人遇到过这个?
更新:2020-10-14
经过更多测试,它似乎只是 AngularFirestore 的问题,而不是 Firestore 本身的问题。同时,作为一种解决方法,我直接使用 AngularFirestore.firestore.onSnapshot。
更新:2020-11-04
事实证明,对于 AngularFirestore,您需要使用 stateChanges 来获得我正在寻找的行为。希望这可以帮助某人。

最佳答案

事实证明,对于 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/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com