如何按布尔值订购 firebase 查询

Eri*_*cky 3 javascript firebase angularfire google-cloud-firestore

我的 firestore 文档中有一个布尔字段。我想按布尔值订购集合。与文档answer逻辑真与文档之前应该出现answer布尔值false。

   const item: AngularFirestoreCollection<any> =
       this.afs.collection(`items`,
          (ref) => ref.where('questionId', '==', questionId)
                      .orderBy('updatedAt', 'desc')
                      .orderBy('answer'));
   return item.valueChanges();
Run Code Online (Sandbox Code Playgroud)

firestore中的物品按以下顺序排列

items = {[
 {
id: 1,
questionId: x1,
answer: false,
updatedAt: 848939
},
{
id: 2,
questionId: x2,
answer: false,
updatedAt: 848936
},
{
id: 3,
questionId: x3,
answer: true,
updatedAt: 848938
}
]}
Run Code Online (Sandbox Code Playgroud)

查询完成后,我希望第三项位于索引 0...结果中的第一项。现在我只得到orderedBy updatedAt。

上面的查询没有给我上面要求的结果。我如何进行这样的查询?

Fra*_*len 5

正如关于数据类型的文档所说:

数据类型:布尔型

排序顺序:false < true

如果您希望文档true先出现,则必须按降序排序:

 .orderBy('answer', 'desc'));
Run Code Online (Sandbox Code Playgroud)