当前位置: 首页 > 知识库问答 >
问题:

Firebase:如何从多个节点删除用户

濮佑运
2023-03-14

假设我的数据库结构如下:

{  
   a:{  
      key1:user1_UID,
      key2:user2_UID,
      key3:user3_UID
   },
   b:{  
      key1:user1_UID,
      key2:user3_UID
   },
   c:{  
      key1:user1_UID,
      key2:user3_UID
   }
}

当删除任何用户1\u UID时,我想从所有节点a、b、c中删除用户1\u UID。

例如,如果我从节点b中删除了key1:user1\u-UID,是否有一种方法也可以从节点a和节点c中删除key1:user1\u-UID,而无需遍历所有节点?还是我的数据结构错误(请注意,这些数据可能嵌套得更深)?

共有1个答案

夏侯朝斑
2023-03-14

如果您知道所有节点的路径,那么可以使用Update命令删除所有节点,如果我错了,请更正我。

var updateData = {};

updateData["a/key1"] = null;
updateData["b/key1"] = null;
updateData["c/key1"] = null;

firebase.database().ref().update(updateData, function(error)
{
  if(error)
  {
   //error goes here
  }
}  
 类似资料:
  • 我遵循此处的指南从firebase数据库中删除值。这是我的数据结构。 这是我正在使用的代码。 发生的情况是,在这个调用中删除了整个/bookmarks节点,而不仅仅是对所需书签的引用。如何实现只删除一个书签而不是删除整个节点?

  • 我正在使用Firebase作为web应用程序。它是用纯Javascript编写的,不使用外部库。 我可以“推送”并使用“.on(”child_added“)”检索数据,但是“.remove()”不能按照它所说的方式工作。根据 API, “Firebase.remove()-删除此Firebase位置的数据。子位置的任何数据也将被删除。删除的效果将立即可见。” 然而,移除不是立即发生的;只有在整个脚

  • 如何从控制台从FireBase中删除节点?由于它太大,显然我无法从控制台中删除它。通常我可以按节点名称附近的删除按钮,但它显示控制台仅出于性能原因而读取。

  • 一直在阅读文件和其他职位,但我无法删除一个节点。我试图通过一个值来选择节点。 然后在结果上调用 remove 方法 除了空错误值之外,什么都不会发生。我使用的是最新的firebase,大多数示例都是针对旧版本的,因此我不确定是否需要获取密钥,然后尝试删除该密钥作为参考? 这是第一次使用 firebase,所以我不确定我是否正确保存了数据。这是要保存的代码。 和屏幕截图

  • 问题内容: 我正在使用reactFire,Firebase和reactJS构建一个简单的待办事项应用程序。我遇到的问题是当我尝试批量删除列表中已完成的条目时。 该循环过早结束,即在删除所有完成的条目之前,因为调用了render函数。 问题答案: 您可以使用多位置更新一次性删除所有已完成的项目:

  • 问题内容: 我有一个像下面这样的json: 我只想将此JSON转换为其他JSON。我想从JSON中删除“ _ 元数据”和“ _some”节点。我正在使用JSON.NET。 问题答案: 我刚结束反序列化到JObject并递归地循环遍历以删除不需要的字段。这是那些有兴趣的人的功能。