RNFirebase 'keepSynced' 未按预期工作

RNFirebase 'keepSynced' not working as expected

我们在我们的一个应用程序中使用了 react-native-firebase,在该应用程序中我们有多个相同级别的参考(reference_A、reference_B、reference_C)我们希望限制其中一个引用 (reference_C) 与 Firebase 实时数据库同步,但不与其他引用同步。

为此,按照 Firebase Documentation and RNFirebase Documentation 中的建议,我们使用了如下 'keepSynced' 方法:

import database from '@react-native-firebase/database';
..
..
..
database().ref('/reference_C').keepSynced(false);

另外,为了保存离线使用的数据,我们使用了如下的'setPersistenceEnabled':

database().setPersistenceEnabled(true);

但是,当在 Firebase 控制台观察时,'reference_C' 在设备联机时同步,这与预期不同。

非常感谢任何帮助。

提前致谢。

keepSynced 没有按您预期的方式工作。不可能完全停止特定节点的同步。您使用 keepSynced 表示您 总是 想要同步一个 特定的 节点。它实际上与向节点添加一个空侦听器相同,因此数据库中的更改与客户端同步。

如果你看到 reference_C 正在同步,这意味着你在代码的其他地方添加了一个监听器,或者你在数据库的根节点有一个监听器,这实际上是一直在同步所有内容。