Javascript 两个数组的Firebase firestore查询

Javascript 两个数组的Firebase firestore查询,javascript,arrays,firebase,google-cloud-firestore,Javascript,Arrays,Firebase,Google Cloud Firestore,我在firestore中有下一个数据结构: { "votes_yes":[ "id1", "id2", "id3", ... ], "votes_no":[ "id4", "id5", "id6", ... ], } 我想构建一个查询,它将返回用户投票的文档

我在firestore中有下一个数据结构:

{
  "votes_yes":[
    "id1",
    "id2",
    "id3",
    ...
  ],
  "votes_no":[
    "id4",
    "id5",
    "id6",
    ...
  ],
}
我想构建一个查询,它将返回用户投票的文档列表。 为此,我需要检查他的
id
是否存在于其中一个数组中

借助于
数组包含的内容,我可以轻松地为一个数组执行此操作:

ref.where('votes_yes', 'array-contains', `userId`).get()
但是,是否可以对
数组包含的内容执行
逻辑或

我在……中没有发现任何有用的东西:(

告诉您需要了解的内容:

请注意,in、not in和array包含以下限制:

  • in、not in和array包含最多10个比较值的任何支持
  • 每个查询最多可以使用一个array contains子句。不能将array contains与array contains组合使用
  • 每个查询最多只能使用一个in、not in或array包含任何子句。不能在同一查询中组合这些运算符
  • 不能将不在与不等于合并!=。 不能按等式(=)或in子句中包含的字段对查询排序
我加粗了一个限制,该限制阻止您在每个查询中使用多个数组包含。除此之外,无论您执行何种查询

执行您要求的操作的唯一方法是执行多个查询,并使用您自己的逻辑在应用程序中组合结果,以确定哪些文档同时满足这两个条件