Angular 如何访问firestore中的字符串数组并对其进行查询

Angular 如何访问firestore中的字符串数组并对其进行查询,angular,typescript,google-cloud-firestore,Angular,Typescript,Google Cloud Firestore,我正在使用firestore作为数据库进行一个angular项目。在数据库中,我存储了一个名为uid的文档,它是一个uid数组。我如何查询它们。我搜索了很多,但所有建议都是使用firebase,而不是firestore。更新29。2019年5月 你现在可以这样做了。有一个数组\u包含查询: 您可以使用array_contains运算符根据数组值进行筛选。例如: citiesRef.where("regions", "array-contains", "west_coast") regions是

我正在使用firestore作为数据库进行一个angular项目。在数据库中,我存储了一个名为uid的文档,它是一个uid数组。我如何查询它们。我搜索了很多,但所有建议都是使用firebase,而不是firestore。

更新29。2019年5月

你现在可以这样做了。有一个数组\u包含查询: 您可以使用array_contains运算符根据数组值进行筛选。例如:

citiesRef.where("regions", "array-contains", "west_coast")
regions是一个字符串数组,上面的查询将只返回数组中包含“west_cost”的文档

====================

旧答案:

不幸的是你不能。从文档中:

尽管CloudFireStore可以存储阵列,但它不支持 查询数组成员或更新单个数组元素。然而,你 仍然可以通过利用其他功能对此类数据建模 云火商店

您可以尝试按照文档中的建议制作一个值映射。这在大多数情况下都有效,除非您在一个文档中存储超过10000个用户UID,而不是在firestore的某些限制下运行

每个文档的最大索引项数

两万

索引项的数量是以下各项的总和: 文件:

The number of single-field index entries
The number of composite index entries
Cloud Firestore自动创建两个单字段索引项 对于每个字段,一个在升序索引中,一个在降序索引中 索引

考虑到20000的限制,每个文档最多可以索引 10000个字段减去文档的复合索引项数


更新29。2019年5月

你现在可以这样做了。有一个数组\u包含查询: 您可以使用array_contains运算符根据数组值进行筛选。例如:

citiesRef.where("regions", "array-contains", "west_coast")
regions是一个字符串数组,上面的查询将只返回数组中包含“west_cost”的文档

====================

旧答案:

不幸的是你不能。从文档中:

尽管CloudFireStore可以存储阵列,但它不支持 查询数组成员或更新单个数组元素。然而,你 仍然可以通过利用其他功能对此类数据建模 云火商店

您可以尝试按照文档中的建议制作一个值映射。这在大多数情况下都有效,除非您在一个文档中存储超过10000个用户UID,而不是在firestore的某些限制下运行

每个文档的最大索引项数

两万

索引项的数量是以下各项的总和: 文件:

The number of single-field index entries
The number of composite index entries
Cloud Firestore自动创建两个单字段索引项 对于每个字段,一个在升序索引中,一个在降序索引中 索引

考虑到20000的限制,每个文档最多可以索引 10000个字段减去文档的复合索引项数

这是一个奇怪的问题。我该怎么问他们呢?这是一个奇怪的问题。