【发布时间】:2020-11-12 02:53:39
【问题描述】:
我对安全规则进行了一些测试,他们为本地 Firestore 模拟器准备了一个数据集(使用 @firebase/testing 库,与 here 描述的差不多)。测试大部分都有效,所以我认为数据确实会到达 Firestore。
但我在模拟器 UI 中看不到它。
http://localhost:4000/ > Firestore 模拟器 > Go to emulator 显示空数据
相关,我想知道“项目ID”参数在仿真中的作用是什么?设置 Firebase 应用对象时需要它,但它在哪里使用?模拟器没有为我提供可供选择的模拟项目列表。
困惑。
复制方式(根据要求):
$ git clone git@github.com:akauppi/GroundLevel-es6-firebase-web.git
$ cd GroundLevel-es6-firebase-web/rules-test
# You only need to work in the rules-test subproject
$ npm install
...
在另一个终端(同一个文件夹):
$ npm run start # leave running...
$ npm run test:symbols
测试应该通过(一个被跳过)。
测试的运行已经为模拟器准备了数据,它应该仍然存在。项目 ID abc(请参阅输出中的“使用会话:abc”)。
http://localhost:4000/ > 进入模拟器
预期:
- 能够选择项目
abc - 能够看到准备好的数据(顺便说一句,它在
data.js)
实际:
- 没有项目ID选择
- 没有数据
我知道的太少了,不知道发生了什么。也许@firebase/testing 永远不会到达模拟器,而我应该使用普通的 Firebase 客户端?
【问题讨论】:
-
发现了一个与此相切的讨论 - 特别是项目 ID。当使用@firebase/testing 时,它们似乎是假的。是这样吗? github.com/firebase/firebase-tools/issues/1960
-
请编辑问题以显示您正在使用的代码和过程未按您预期的方式工作。问题中应该有足够的信息,以便任何人都可以重现您看到的内容。
-
@DougStevenson Fair,已添加
-
添加,因为这出现在我搜索“firestore 模拟器未显示根节点”时; 检查您是否正在运行最新的模拟器更新。在我的情况下,我有带有空父文档的子集合,它们是我几个月大的模拟器安装的not getting displayed in the UI。
标签: firebase google-cloud-firestore firebase-tools