如何限制传递给$ firebase对象的对象数量?

时间:2014-07-29 14:12:39

标签: angularjs firebase angularfire

我正在尝试使用firebase连接器angularfire设置angularjs应用。 在我的数据库中,我有一个无穷无尽的列表,我想只显示最后100个项目和任何新的项目。

根据文档,函数$firebase()Firebase引用作为参数与其设置的任何url一起使用。它会自动加载可以分配给$scope的内容。但是如果有很长的数据列表会发生什么?是否可以选择限制从firebase提取的项目数量,与使用.limit()直接从Firebase参考中提取数据时的方式相同?我没有在angularfire文档中找到任何内容。

1 个答案:

答案 0 :(得分:1)

你可以选择使用limit()和startAt()和endAt():

var ref = new Firebase(URL);
var limited = $firebase(ref.limit(100)); // last 100 messages
or 
var limited = $firebase(ref.endAt().limit(100)); // last 100 messages
or 
var limited = $firebase(ref.startAt().limit(100)); // first 100 messages

你甚至可以从startAt或endAt作为参数传递位置: https://www.firebase.com/docs/web/api/query/limit.html