我能以某种方式确定在ref-1之间的值是否不存在newTotal的子代吗?

这就是我希望可以使用的功能。如果查询中存在子代,则运行回调。

ref.orderByValue().startAt(-1).endAt(newTotal).limitToLast(1).once("child_added", function(snap){

   /* Runs only when query yields a result */

   if (snap.exists()){
     ...
   } else {
     ...
   }

});


newTotal为0或任何正整数。

最佳答案

child_事件仅在相关子级存在/更改时才会触发。

要检测何时没有子级,您还需要(也)监听value事件:

var query = ref.orderByValue().startAt(-1).endAt(newTotal).limitToLast(1)

query.once("value", function(snapshot){
  if (snapshot.exists()){
    snapshot.forEach(function(child) {
      ..
    });
  } else {
     console.log('No child exists');
  }
});

关于javascript - 我可以确定查询是否找不到值在指定范围内的任何子级吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39900082/

10-10 23:48