【问题标题】:How can I delete data from firebase thru web app?如何通过网络应用程序从 Firebase 中删除数据?
【发布时间】:2020-01-14 14:22:08
【问题描述】:

这是我的 JavaScript 代码。

var rootRef = firebase.database().ref().child('User');
rootRef.on("child_added", snap => {

  var description = snap.child("description").val();
  var title = snap.child("title").val();
  var article = snap.child("article").val();

  $("#table_body").append("<tr><td>" + title + "</td><td>" + description + "</td><td>" + article + "</td><td><button>Remove</td></tr>");
});

【问题讨论】:

  • 我没有使用过 Firebase,但这里有一个快速的 video 我发现了如何实现你想要做的事情。
  • 请不要命名非 root 引用 rootRef,我已经看到了太多开发人员的这次旅行。在您的情况下,更适合将其称为userRef(或userRootRef,如果您希望它成为'User' 树的根),您也可以使用var userRef = firebase.database().ref('User'); 对其进行初始化

标签: javascript firebase firebase-realtime-database


【解决方案1】:

删除数据的最简单方法是在对该数据位置的引用上调用 remove()。因此,在您的情况下,您需要一个删除数据的函数,传入子键,然后在单击删除按钮时调用该函数。

function deleteData(dataKey) {
  firebase.database().ref('User/' + dataKey).remove()
}
var rootRef = firebase.database().ref().child('User');
rootRef.on("child_added", snap => {

  var description = snap.child("description").val();
  var title = snap.child("title").val();
  var article = snap.child("article").val();

  $("#table_body").append("<tr><td>" + title + "</td><td>" + description + "</td><td>" + article + "</td><td><button onclick='deleteData(" + snap.key()  + ")'>Remove</td></tr>");
});

【讨论】:

  • 谢谢你!但是当我尝试运行它时,我收到一条错误消息,提示 snap.key 不是函数
  • 它可以工作,但有时它显示一个错误说 SyntaxError: missing ) 在参数列表之后它指出了 html 文件
  • 标题 描述 文章
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-21
  • 2011-08-07
  • 1970-01-01
  • 1970-01-01
  • 2016-11-02
  • 1970-01-01
相关资源
最近更新 更多