在Firebase中创建一个空的子记录

use*_*535 27 firebase

我正在尝试使用Firebase数据视图创建一个孩子,但似乎这是不可能的,因为创建节点直接消失或者不会在任何时间显示.我试图将值字段留空,但这根本不起作用以及将null写入值字段.我做错了吗?

-Fabian

Kat*_*ato 51

空值和空值与不存在的记录相同.如果您希望它存在,则必须设置一个值.

换句话说,当您测试记录的存在时,您不是要查看密钥是否在数据库中,而是要查看路径(该密钥的位置)是否包含任何数据.

建议:使用像0或false之类的假值,直到有一些数据投入该位置.您不像使用SQL那样受数据类型的限制,因此您可以随后将其替换为object/array/et al.

  • 我发现这是firebase的一个非常讨厌的功能.不断地检查某些东西是否存在然后创建它是否是一种痛苦,特别是如果你的对象被严重嵌套,因为你必须在链条上检查每个属性.没有空值的数据库很愚蠢,使用"0"或"假"之类的东西是对丢失数据的错误表述.为什么不只是允许空值?? !!! (16认同)
  • 您没有得到未定义,在查询路径时您将获得null.这样就处理了用例. (4认同)
  • 我认为这可以作为答案. (2认同)
  • @Kato Nulls(或任何类似的空值)使您能够避免与“未定义”相关的错误,从而避免了仅为了检查这些额外的边缘情况而不得不编写额外的代码的麻烦。 (2认同)