Firebase:在删除父级时调用child_removed?

时间:2016-10-24 09:22:19

标签: javascript firebase firebase-realtime-database

我正在管理具有以下数据库结构的项目列表:

root
  - mylist
    - item1: val1
    - item2: val2
    - ...

我将child_addedchild_removed个事件监听器附加到mylist,并且我(正确地)在添加或删除项目时收到通知。

我的问题是:如果child_removed(即父节点)被移除,我是否应该为列表中的每个项目预期mylist个事件?

文档不清楚,实际上我见证了两个非常相似的列表的行为。我会收到通知吗(我的一个名单上有些错误),或者是另一个偶然通知的名单?

如果无法保证child_removed通知,则选项也是监听child_removed节点上的root个事件,并检查key是否匹配{{ 1}}。

但这意味着为此用户添加'mylist'对整个.read树的访问权限。并且通过更深层次的层次结构,如何知道何时删除任何父母?

彻底观察列表内容的其他任何方式,包括删除列表本身?

使用firebase JS SDK 3.4.1版

1 个答案:

答案 0 :(得分:2)

仔细研究一下,我找到了答案。供将来参考:

,当每个项目本身或其任何祖先被删除时,都会调用 if (Keyboard.isKeyDown(Keyboard.KEY_RIGHT)) { x += Clock.delta() * speed; } if (Keyboard.isKeyDown(Keyboard.KEY_DOWN)){ y += Clock.delta() * speed; } if (Keyboard.isKeyDown(Keyboard.KEY_LEFT)){ x -= Clock.delta() * speed; } if (Keyboard.isKeyDown(Keyboard.KEY_UP)){ y -= Clock.delta() * speed; } 。请参阅reference documentation

我在我的案例中没有看到它的原因是因为我在一个没有足够参数的监听器上调用了child_removed,导致所有我的监听器取消订阅。