无法删除firebase中的元素和子元素

时间:2014-03-15 15:38:31

标签: javascript firebase

我有一个包含用户信息的数据块,因此数据树看起来像:

app
  -Jweljralsdjfo49
    username: "Fred"
    age: 25
    shoesize: 16

我试图这样做:

var ref = new Firebase(my_app_path + stored_user_id);
ref.remove();

我也试过了;

var ref = new Firebase(my_app_path);
var child = ref.child(stored_user_id);
child.remove();

两者都不起作用,因为数据始终存在。

remove()的文档说明:"删除此Firebase位置的数据。儿童位置的任何数据也将被删除。",所以我希望它一切都消失。

我尝试添加回调,并且在每种情况下都会使用null调用回调(表示成功,引用文档:"回调将在失败时传递Error对象, else null。")。

我做错了什么?是因为我使用的是用户ID吗?我目前没有使用任何安全规则,但一旦我这样做,出于安全限制,我不希望非用户能够删除用户内容。

谢谢!

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

编辑:发现问题。

我使用EmberFire,效果很好;但跟踪对象的EmberFire.Object必须是destroy()' d,然后我必须这样做:

Ember.run.later(function() {
  var ref = new Firebase(my_app_path + stored_user_id);
  ref.remove();
}, 1);

为了让对象正式消失,并让Ember / EmberFire释放其对数据的控制。

1 个答案:

答案 0 :(得分:0)

您可以调查添加$以删除 例如:

var ref = new Firebase(my_app_path + stored_user_id);
ref.$remove(); 

为我工作。