对于拥有一些基本数据库/ firebase经验的人来说,这应该是一个简单的答案。我查看了整个文档,但找不到我想要的简单解释。
我对数据库一般是新手,所以如果这里有关于我的问题的好帖子,或者互联网上的其他地方随时可以告诉我。
我的问题
让我们说我的React应用程序中有一个输入字段,每当用户输入一个值并按下回车键时,我希望将数据推送到我的数据库的某个部分,让我们调用地区,“任务”。我实际上能够做到这一点,并且每次按Enter键时都可以实时查看我的任务目录中创建的信息。我可以看到firebase使用自己唯一生成的“密钥”将其输入到tasks目录中。
然而,我的问题是我有另一个组件,我想将所有孩子从“任务”输出到屏幕。我认为我的问题是我不了解数据存储方式的基本原理以及如何操作数据(来自firebase的官方文档并没有多大帮助)。
我尝试上述 在我的组件中,我试图使用javascript map函数,它只是遍历任务中的项目,并将每个项目输出到它自己的div中。这里的问题是唯一键标识符不适用于array.map函数。但是,假设我手动将任务列表输入数据库,并从0开始给我们自己的密钥,然后按顺序递增(0,1,2,3,4,5)
下面的小图片显示了我的意思。我手动输入了这些任务,并可以通过它们进行映射,但是如果它们具有来自firebase的随机生成的密钥,则它不起作用。非常感谢任何帮助。
答案 0 :(得分:0)
您想使用.set()来指定您的ID。也就是说,Firebase使用的随机生成的ID用于重要目的(时间戳),因此可以自行覆盖这些ID。
如果您已设置为手动分配ID,请尝试此操作:
var tasksRef = ref.child("tasks")
tasksRef.child('0').set({'hello world')}