Typescript firebase:修改数据时行为异常:重复

Typescript firebase:修改数据时行为异常:重复,typescript,firebase,Typescript,Firebase,使用firebase和ionic类型脚本 使用push向集合组中添加新条目时,会显示许多临时组。我使用on方法订阅了它们,并在数据更改时发布一个事件。因此,每次我在数据库中添加数据时,客户机中的更改都是即时的,没有任何交互 一些屏幕截图可以更好地解释正在发生的事情: 在添加之前: 在navctrl.pop之后直接添加一个组测试_2后: 强制刷新列表后,或者如果我加载了群聊并退出: 如果我直接在firebase中删除“test_2”: 数据库中没有这些“副本”,只有客户端。 添加后,所有副

使用firebase和ionic类型脚本

使用push向集合组中添加新条目时,会显示许多临时组。我使用on方法订阅了它们,并在数据更改时发布一个事件。因此,每次我在数据库中添加数据时,客户机中的更改都是即时的,没有任何交互

一些屏幕截图可以更好地解释正在发生的事情:

在添加之前:

在navctrl.pop之后直接添加一个组测试_2后:

强制刷新列表后,或者如果我加载了群聊并退出:

如果我直接在firebase中删除“test_2”:

数据库中没有这些“副本”,只有客户端。 添加后,所有副本均为“有效”,但在删除后无效,因为它已从firebase中删除。这仅在添加或删除数据时发生,而不是在初始化时发生


我如何防止这种情况发生?

我发现firebase是一个bug吗?在使用之前,我需要关闭on方法。不这样做会触发on方法和我的subscribe multiple time,绕过我对变量的重置,导致重复

在on之前,我添加了一个off方法,它解决了我的问题

this.fireuser.child(firebase.auth().currentUser.uid).child('groups/').off();
this.fireuser.child(firebase.auth().currentUser.uid).child('groups/').on('value', (snapshot) => {...})

寻求调试帮助的问题“为什么此代码不起作用?”必须包括所需的行为、特定的问题或错误以及在问题本身中重现它所需的最短代码。没有明确问题陈述的问题对其他读者没有用处。请参阅:。@FrankvanPuffelen问题是,问题只是部分来自我的代码:/只有删除后的流氓goups是一个错误,我没有正确清除变量。然而,重复项来自firebase on方法,该方法被多次同时调用,并添加和绕过变量重置。我是firebase的新手,在我提出导致这场混乱的问题时,我没有发现这个问题:/