collectionChanges is firing for every element on a single deletion
评估
这个 Issue 还没有评估数据。
描述
I have AngularFire/RxFire code similar to the following:
collectionChanges(
collection(this.firestore, "col1/doc1/col2"))
.subscribe(changes => {
console.log('RxFire changes', changes);
});
This generally works: When the page loads, I get added events for every document in the collection. When a document changes, a single modified event fires. However, when a document is deleted, the next change batch includes a removed event (good) and also a modified event for every other element in the collection (bad). 🤔
Any idea why these extra modify events are happening + how to avoid all the extra reads? or is this all from the cache?
I've verified there's no actual change to the other documents in the collection. A single modified change mentions oldIndex and newIndex so I wonder if it's maybe trying to update the index of every element, but there isn't a sort order so any index is undefined anyways.
If it's helpful, as a test I tried the equivalent Firebase code:
const q = query(collection(this.firestore, "collection1/doc1/collection2"));
onSnapshot(q, (snapshot) => {
const docs = snapshot.docChanges();
console.log("Changes received", docs);
});
This works as expected and only fires one removed event, which is why I think the bug is in RxFire.
- 主要语言
- TypeScript
- 星标
- 150
- 派生
- 50
- PR 合并指标
- 30 天内没有已合并 PR
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
FirebaseExtended/rxfire 的其他 Issue
-
难度 4/5 3-5 天 新手友好度 30/100
FirebaseExtended/rxfire#105 ·
-
难度 3/5 1-2 天 新手友好度 35/100
FirebaseExtended/rxfire#94 ·
-
难度 1/5 1 小时以内 新手友好度 35/100
FirebaseExtended/rxfire#90 ·
-
难度 3/5 1-2 天 新手友好度 35/100
FirebaseExtended/rxfire#88 · 10 条评论 · 14 个 reaction ·
-
难度 4/5 3-5 天 新手友好度 35/100
FirebaseExtended/rxfire#84 · 1 条评论 · 2 个 reaction ·
查看 FirebaseExtended/rxfire 的全部 Issue
相似的 Issue
-
bug require-triage
难度 2/5 1-3 小时 新手友好度 72/100
expressjs/expressjs.com#2549 · 1 个 reaction ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 83/100
umami-software/umami#4686 · 1 条评论 ·
维护者通常 2 天内回复
-
[Bug]: Device screenshot fails with 500 on iPhone Duo (Xcode 27.2): serve-sim calls simctl without --display可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭
难度 2/5 1-3 小时 新手友好度 66/100
pingdotgg/t3code#24900 · 1 条评论 ·
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
inu-appcenter/UNIDorm-web#411 ·
维护者通常 1 天内回复
-
🐛 bug
难度 2/5 1-3 小时 新手友好度 82/100
维护者通常 2 天内回复