我想从我的数据存储中收集最新的10个项目。我相信我应该使用.child()
和.limitToLast()
执行此操作,每次将结果添加到子项时都会发出事件。
我不一定知道总共有10个项目,所以一个简单的计数器不会起作用。
我如何知道Firebase何时完成给我结果?
示例查找代码:
var plots = [];
firebaseDatastore.child("plots").orderByChild("unicode-timestamp").limitToLast(10).on("child_added", function(snapshot) {
// Add the new item to the list
plots.push(snapshot.val());
});
我需要知道最后的情节何时被添加,无论它是否达到了极限。
答案 0 :(得分:3)
Firebase查询永远不会真正结束。它继续通过unicode-timestamp监视(在您的情况下)绘图,并保留最后10个绘图的“窗口”。
所以:
然后当你添加另一个情节时:
如果您不想使用此行为,则有两种选择:
value
事件,然后snapshot.forEach
使用子节点off
你的听众