首页 > 解决方案 > 无法使用reactjs在firebase中的“用户”集合中获取UID列表

问题描述

constructor(props) {
    super(props);
    this.state = {
      users:[]
    };
  }

//method to get the data from users collection
  async componentDidMount() {
      const db = firebase.firestore();
      db.collection("users")
      .get()
      .then(querySnapshot => {
          const data = querySnapshot.docs.map(doc => doc.data());
          console.log(data);
          this.setState({ users: data });
      })
      .catch( err =>{
          console.log(err);
      });
    }

这个函数返回一个空错误我想打印用户 uid 列表

火力基地片段

这里我有用户收藏,里面有零售商收藏及其文件

标签: javascriptreactjsfirebasegoogle-cloud-firestore

解决方案


您必须在这里意识到的一件事是您的用户集合不包含任何文档。文档 ID 以斜体显示,表示此处没有文档。ID 是可见的,因为每个文档下都有一个嵌套的子集合。它们在控制台中显示为这样,以便您可以单击并导航到嵌套的子集合,尽管缺少文档。

如果您想通过查询列出用户,则必须在 users 集合中实际创建文档。如果您没有任何信息,它们可以为空。 但是您确实需要用户集合中的实际文档才能在查询中显示任何内容。


推荐阅读