获取错误:确保您的查询已通过Firebase控制台编制索引。关于从子集合查询?

获取错误:确保您的查询已通过Firebase控制台编制索引。关于从子集合查询?,firebase,react-native,google-cloud-firestore,Firebase,React Native,Google Cloud Firestore,这就是错误: 这是我的疑问: 组件安装{ const uid=auth.currentUser.uid; 火库 .collectionGroup“成员” .where'uid','=',`${uid}` 收到 .thendoc=>{ console.logdoc.id; }; } 我试图找到可能的解决方案,对于这一点,我发现在运行adb logcat或react native log android时,错误会显示一个为查询创建索引的链接。我两个都跑了,没有得到任何链接 运行adb logcat

这就是错误:

这是我的疑问:

组件安装{ const uid=auth.currentUser.uid; 火库 .collectionGroup“成员” .where'uid','=',`${uid}` 收到 .thendoc=>{ console.logdoc.id; }; } 我试图找到可能的解决方案,对于这一点,我发现在运行adb logcat或react native log android时,错误会显示一个为查询创建索引的链接。我两个都跑了,没有得到任何链接

运行adb logcat时:

在运行react native log android时:

请引导我解决这个问题

编辑: 我还在控制台中创建了一个复合索引,但仍然会遇到相同的错误。

您有一个字段集合组查询,默认情况下我们不会为其建立索引。请注意,这是一个单字段索引,而不是一个复合字段索引

在控制台中,转到索引,然后是单字段索引。增加一项豁免:

集合Id=成员 字段=uid。 确保选中“集合组”范围,然后单击“下一步”:

在这种情况下,启用一个或多个“升序”和“降序”都可以 单击保存
您有一个字段集合组查询,默认情况下我们不会为其构建索引。请注意,这是一个单字段索引,而不是一个复合字段索引

在控制台中,转到索引,然后是单字段索引。增加一项豁免:

集合Id=成员 字段=uid。 确保选中“集合组”范围,然后单击“下一步”:

在这种情况下,启用一个或多个“升序”和“降序”都可以 单击保存
你肯定需要一个健康的环境。另请参阅其中涉及orderBy的部分,但这是相同的问题。我检查了文档并在firebase控制台中手动创建了索引,但仍然出现相同的错误。您肯定需要一个索引。另请参阅其中涉及orderBy的部分,但这是相同的问题。我检查了文档并在firebase控制台中手动创建了索引,但仍然得到相同的错误。这对我来说很有效,但我仍然不理解为什么我的是单字段集合组查询?你能详细说明一下吗?这方面我是新手。例如,如果我使用了collectionGroup'Members'。where.orderBy那么它会变成复合的吗?这对我来说很有效,但我仍然不明白为什么我的查询是单字段集合组查询?你能详细说明一下吗?这方面我是新手。例如,如果我使用了collectionGroup'Members'。where.orderBy那么它会变成复合的吗??