我可以在同一Firestore查询中的不同字段上使用数组包含和数组包含的任何内容吗?

时间:2020-08-09 04:26:06

标签: javascript firebase google-cloud-firestore

我目前正在构建我的Firestore数据库。我有一个“事件”集合,除其他字段外,我在数组中添加受邀用户的uid以及te事件的状态,以了解该事件是否已发布,未发布,已取消或已完成。我想为了查询事件集合以了解用户是否应该能够看到事件ID,需要

events.where(邀请,数组包含,currentUserUID)。where(状态,==,已发布)

并再次查询

events.where(邀请,数组包含,currentUserUID)。where(状态,==,已取消)

这样我可以显示两个结果,但是如果状态字段更改为仅包含一个元素的数组,我可以使用类似的

events.where(邀请,数组包含,currentUserUID)。where(状态,数组包含任何,[已发布,已取消])

但是我不确定这是否会运行查询,也许我只是在查询2次时尝试简化查询就可以了

1 个答案:

答案 0 :(得分:1)

我几乎在doc的最下方找到了我自己的问题的答案, 上面写着:

您可以将 array-contains in 组合,但不能与 array-contains-any 组合。