如何从按属性值排序的Firebase / Firestore获取文档

问题描述 投票:0回答:1

我在“类别”集合中有6个文档,如下所示:

{
  color: "#eee",
  index: 6,
  name: "Restaurants",
}

我想检索由index属性排序的这些文档,从最少到最多排序。我能够获得所有文件,但我不确定如何通过索引订购结果。我也不确定是否应该从Firestore查询它们,然后只在它们在客户端上时对它们进行排序。

今天我的查询看起来像:

var db = firebase.firestore();    
db.collection("categories").get().then((querySnapshot) => {
      let categories = []
      querySnapshot.forEach((doc) => {
        categories.push(doc.data())
      });
      this.setState({categories: categories});
    });

谢谢!

javascript reactjs firebase google-cloud-firestore
1个回答
1
投票

嗨astrojams1很棒的问题。修改您的查询,如下所示:

db.collection("categories").orderBy("index")
  .get()
  .then((querySnapshot) => {
    let categories = []
    querySnapshot.forEach((doc) => {
      categories.push(doc.data())
    });
    this.setState({categories: categories});
  });
© www.soinside.com 2019 - 2024. All rights reserved.