【问题标题】:Firebase Firestore Emulator UI is not showing any data, but data is being returned in app queryFirebase Firestore Emulator UI 未显示任何数据,但应用查询中正在返回数据
【发布时间】:2021-07-22 19:13:20
【问题描述】:

我在使用 firebase 的 firestore 模拟器时遇到了一个奇怪的问题。当我启动模拟器并检查模拟器的firestore UI时,它显示数据库中还没有数据。

然后,我尝试在 firestore 模拟器中查询我的 react-native 应用程序中的数据,令人惊讶的是,之前会话的旧数据又回来了。我正在返回我在上一个会话中添加的数据,但它在模拟器 UI 上不可见。

我的印象是关闭模拟器会删除该会话期间添加的所有数据,所以下次启动模拟器时为什么我会看到上一个会话的数据?好像它以某种方式被缓存在某个地方......?

我在 stack-overflow 上看到了多篇关于 --project 参数被提供给 firebase emulators:start 终端命令的帖子。这似乎对我的情况没有任何影响。

如果有任何解决问题的建议,我将不胜感激。

【问题讨论】:

  • 您找到解决方案了吗?
  • @Simon 事实上我做到了!现在发布答案。

标签: firebase react-native google-cloud-firestore firebase-tools


【解决方案1】:

事实证明,firebase 原生版本有某种缓存机制,有点奇怪。

对我有用的解决方案是,我从模拟器/设备中删除了我正在开发的应用程序,并确保在出现提示时点击“删除所有应用程序数据”。

之后,我会重新安装,firebase 会按预期运行。

【讨论】:

    【解决方案2】:

    根据我的经验,必须将应用所连接的项目与 Firebase CLI 当前使用的项目相匹配。否则,Firestore 模拟器 UI 不会显示与应用的实时交互。

    具体来说,应用正在使用其google-service.jsonGoogleService-Info.plist 文件的Firebase 项目必须与firebase projects:list 的输出中当前使用的项目匹配。

    如果两个项目不匹配,应用仍然可以连接到模拟器;数据读写也可以;但实时 Firestore 模拟器 UI 不会显示任何内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2020-06-04
      • 2021-05-09
      • 1970-01-01
      • 1970-01-01
      • 2014-12-14
      • 2020-02-21
      • 1970-01-01
      • 2020-08-26
      相关资源
      最近更新 更多