Firebase - 剩余最后一个子元素的名称不能包含前导零

Firebase - Last Remaining Child Element's Name Cannot Contain a Leading Zero?

本文关键字:不能 包含前 元素 最后一个 Firebase      更新时间:2023-09-26

我在Firebase中看到了一些奇怪的行为。这可能是预期的行为,但我不知道,因为我今天刚刚注册。

我创建了以下结构:

https://sitename.firebaseio.com/users/1/data/vendorname/devices/devicename/sales/10182013/asdf

。其中"ASDF"是值为"1234"的元素。然后,我添加了另一个值为"5.8"的元素"00"。删除"asdf"元素后,"data"和所有子元素将立即删除,尽管"10182013"仍然包含子元素("00")。这是为什么呢?

我已经通过Firebase Forge和以下代码多次重现了这一点:

var deletetest = new Firebase('https://sitename.firebaseio.com/users/1/data/vendorname/devices/devicename/sales/10182013/asdf');
deletetest.remove();

问题是Firebase将数字键名称解释为数组索引。在10182013下有一个名为"00"的孩子,导致Firebase认为它是一个空数组,并将其替换为null