FireBase - Observer Remove Child 在特定路径未被调用
FireBase - Observer Remove Child at specific path not getting called
我确定我遗漏了什么,但不确定是什么。我理解"Remove Child"的概念,仅指parent下面的child。然而,如果我有以下结构:
Parent
Users
User1
prop1
User2
prop 2
而且我想直接删除User1(并观察它)。这就是我尝试过的:
1.First 我们添加一个观察者
let futureRef = Firebase(url: "parent/Users/User1")
futureRef.observeEventType(.ChildRemoved, withBlock: { ( snapshot) in
self.gameOver.disableMatch()
})
比我们删
let futureRef = Firebase(url: "parent/Users/User1")
futureRef.removeValue()
** 观察者没有被调用,我知道我可以观察所有 "Users" 类别,然后检查 - 但那是错误的(想想同一个分支的 1000 个用户,每次删除将被调用 **
任何建议如何实现特定位置"Remove"?
您应该观察父节点以了解其子节点的变化。
因此,如果您观察到:/parent/users
对任何用户(User1、User2)的任何更改都将触发该事件。
如果您像示例中那样观察 /parent/users/user1,则该节点内的任何更改(例如对 prop1 的更改)都会触发该事件。
我确定我遗漏了什么,但不确定是什么。我理解"Remove Child"的概念,仅指parent下面的child。然而,如果我有以下结构:
Parent
Users
User1
prop1
User2
prop 2
而且我想直接删除User1(并观察它)。这就是我尝试过的:
1.First 我们添加一个观察者
let futureRef = Firebase(url: "parent/Users/User1")
futureRef.observeEventType(.ChildRemoved, withBlock: { ( snapshot) in
self.gameOver.disableMatch()
})
比我们删
let futureRef = Firebase(url: "parent/Users/User1") futureRef.removeValue()
** 观察者没有被调用,我知道我可以观察所有 "Users" 类别,然后检查 - 但那是错误的(想想同一个分支的 1000 个用户,每次删除将被调用 **
任何建议如何实现特定位置"Remove"?
您应该观察父节点以了解其子节点的变化。
因此,如果您观察到:/parent/users
对任何用户(User1、User2)的任何更改都将触发该事件。
如果您像示例中那样观察 /parent/users/user1,则该节点内的任何更改(例如对 prop1 的更改)都会触发该事件。