where/how 我是否调用 firebase 数据库来获取 currentUser 数据,以便用户可以看到他们自己的个人资料?

where/how do I call firebase database to get currentUser data so that a user can see their own profile?

我不太清楚在哪里或如何调用 firebase 数据库来显示配置文件容器内的当前用户数据。

当用户注册时,它会在 firebase 集合 'users' 中创建一个与用户唯一的 firebase ID 相同的文档。

async function signup(email, password) {
    return auth.createUserWithEmailAndPassword(email, password).then((cred) => {
      return firebase
        .firestore()
        .collection("users")
        .doc(cred.user.uid)
        .set({
          age: age,
          location: location,
          bio: bio,
          name: name,
          email,
        })
        .then(() => {
          console.log("Document Added");
          return true;
        });
    });
  } 

我需要将一些数据调用到下面的配置文件组件中,但我不确定如何调用它或使用什么语法。

export default function Profile() {
  const { currentUser } = useAuth();
  const history = useHistory();


  
  return (

    <>
    <div className="profileCard__cardContainer">
      <ProfileCard className="card"
                  preventSwipe={["up", "down", "left", "right"]}  
      >
        <div><h2>Profile</h2></div>
        
        <div className="email"><strong>email:</strong> {currentUser.email}
        </div>
        <div className="name">
          {currentUser.doc.data(name)}
        </div>
        

      </ProfileCard>
      <Link to="/update-profile" className="updateProfile__button">
        <Button>Update Profile</Button>
      </Link>
      </div>
    </>
  );
}

我知道这可能真的很简单,可能有一个我不完全理解的概念。

您需要从 Firestore 加载文档以从中获取数据。基于应该带有功能组件的 ReactFire documentation,它看起来像:

function UserDetails() {
  const userRef = useFirestore()
    .collection('users')
    .doc(currentUser.uid);

  const { status, data } = useFirestoreDocData(userRef);
  // easily check the loading status
  if (status === 'loading') {
    return <p>Loading user profile...</p>;
  }

  return <p>User bios: {data.bio}</p>;
}