【问题标题】:NULL list of documents after querying Firestore with each element of given List使用给定列表的每个元素查询 Firestore 后的 NULL 文档列表
【发布时间】:2021-04-28 15:31:31
【问题描述】:

我正在创建一个颤振应用程序,我想在其中搜索 firestore 中的用户名列表。

我正在尝试使用 Firebase Firestore 中给定列表的每个元素发出查询请求,但即使列表的给定元素是正确的,也会得到一个空文档列表。

static void searchUsersWithPhone(List<String> name) { // here name list is ['xyz', 'abc']
List email;
name.forEach((element) async {
  final snapshot = await FirebaseFirestore.instance.collection('users').where('name', isEqualTo: element).get();
  print(snapshot.docs); // giving null list
});

}

Firestore 格式:

【问题讨论】:

    标签: firebase flutter google-cloud-firestore


    【解决方案1】:

    更新答案:forEach() 方法需要一个同步回调,因此您不能在其中等待调用,改用 For 循环.

    【讨论】:

    • 嘿 Rishi,我的回答是澄清您的查询正确,您的问题没有足够的信息来调试,所以请提供您在这种情况下获得的结果以便能够提供帮助。还可以尝试不使用 .where 部分进行查询,以查看查询是否得到任何结果。 @RishiMalgwa
    • 'name' 列表中的字符串是正确的。查询 (.where ) 不适用于 foreach 循环。当我只使用一个没有列表的字符串时,我得到了正确的结果。
    • 我得到空文件列表。再次阅读我提到的关于空列表的问题和代码。
    • @RishiMalgwa 让我知道这是否适用于 For 循环,如果可以的话,将不胜感激解决方案:)
    猜你喜欢
    • 2021-05-16
    • 1970-01-01
    • 1970-01-01
    • 2020-05-29
    • 1970-01-01
    • 1970-01-01
    • 2017-02-01
    • 2020-03-26
    • 1970-01-01
    相关资源
    最近更新 更多