这是我的代码的基本思想。我从我的实际代码中删除了很多额外的东西,但它主要是 css - 它都不应该对此产生任何影响......
listRef.on('child_removed', function(childSnapshot, prevChildName) {
alert('child removed!');
});
listRef.on('child_added', function(childSnapshot, prevChildName) {
itemRef = childSnapshot.ref();
alert('child added!);
itemRef.on('value', function(snapshot){
alert('item value changed!');
var name = snapshot.val().name; // if I remove this line, child_removed is called
$("#name").html(name);
});
});
$("#button").click(function() {
itemRef.remove();
});
问题是,$("#button")
点击时,itemRef 会从 Firebase 中的 listRef 中删除,但该'child_removed'
事件永远不会触发......如果我取出
driveRef = undefined;
然后child_removed
被称为...
其他一切正常 -$("#name")
已更新,alert()
我用来测试它的所有对话框都工作正常 - 唯一的问题是child_removed
没有被调用。