【问题标题】:How to compare value and delete from firebase realtime database?如何比较值并从 Firebase 实时数据库中删除?
【发布时间】:2018-02-03 22:46:52
【问题描述】:

我在 Android 应用中使用 Firebase 实时数据库,并且有这样的数据:

如何从 javascript 访问该数据。 我只是想编写函数来获取每个 endTime 的值并与当前时间进行比较,如果 endTime

事件是固定值。

Indjija、Vojvodina 和 -KsB2mVkpgQe_fRyFFH4 是自动生成的,因此可以有更多类似这两个的值。

我知道如何在 android studio 中使用 Java 代码解决这个问题,但我对实现服务器功能很感兴趣。

【问题讨论】:

  • 如何访问值 endTime? var firebaseRefEndTime = firebase.database.ref('Events').child().child().val("endTime‌​");我没有在那个子括号中放任何东西,因为它是由我的 android 应用程序自动生成的。我只需要每个 endTime 字段的值。

标签: javascript android firebase firebase-realtime-database


【解决方案1】:

这个问题的答案深藏在 Firebase Database Reference 中。 forEach() 用于在不知道孩子确切路径的情况下到达孩子。

var leadsRef = database.ref('leads');
leadsRef.on('value', function(snapshot) {
    snapshot.forEach(function(childSnapshot) {
      var childData = childSnapshot.val();
    });
});

现在childSnapshot 将包含所需的数据,同样的东西也可以使用child_added 访问。

leadsRef.on('child_added', function(snapshot) {
      //Do something with the data
});

唯一的区别是forEach()的情况下,它会从头开始循环,所以如果添加任何新数据,它也会加载以前的数据,但child_added的情况下,监听器只有新的孩子,而不是以前的现有孩子。

有用的链接:

Firebase Read and Write Web

希望对你有帮助。

【讨论】:

  • 如何访问值 endTime? var firebaseRefEndTime = firebase.database.ref('Events').child().child().val("endTime");我没有在那个子括号中放任何东西,因为它是由我的 android 应用程序自动生成的。我只需要每个 endTime 字段的值。
猜你喜欢
  • 1970-01-01
  • 2016-09-20
  • 1970-01-01
  • 2021-06-04
  • 1970-01-01
  • 1970-01-01
  • 2021-09-20
  • 1970-01-01
相关资源
最近更新 更多