我们可以在firestore中限制子集合的结果吗?

时间:2018-02-11 03:46:58

标签: firebase google-cloud-firestore

我正在尝试使用firestore构建一个聊天应用程序,我很困惑在一个房间中设置消息作为子集合或根集合。如果我使用子集合,我们如何限制从该子集合返回的记录?

1 个答案:

答案 0 :(得分:0)

如果您在对象messages中的每个文档下都有子集rooms,那么您可以首先创建对该集合的引用来获取房间room1的消息:

var ref = firebase.firestore().collection('/rooms/room1/messages');

然后获取文件:

ref.get().then(function(querySnapshot) {
  querySnapshot.forEach(function(document) {
    ...
  });
});

如果您只想通过名为timestamp的字段获取10条最新消息,请执行以下操作:

ref.orderBy("timestamp", "desc").limit(10).get().then(function(querySnapshot) {
  ...