我试图弄清楚如何从Firestore数据库中为react原生天才聊天中的每个用户设置一个图像作为用户的头像,但我不知道该怎么做。
我之前在另一个问题上发布了我的代码,但没有人回答,那么您是如何从Firebase Firestore中提取用户图像并将其设置为头像的?
目前,为了从Firestore获取用户ID,我尝试了这样做,但它不起作用。
async componentDidMount() {
  this.setState({ user: firebaseApp.auth().currentUser });
  this.listenForMessages(this.messagesRef);
  const currentUserUID = firebaseApp.auth().currentUser.uid;
  let doc =  await firebaseApp
  .firestore()
  .collection('userProfile')
  .doc(currentUserUID)
  .get();
    
  let dataObj = doc.data();
   
 this.setState({ avatar: dataObj.image}); // CALLING IMAGE FROM DATABASE
    
}发布于 2021-04-12 22:06:39
我会避免使用Firestore来存储你的头像图像。单个Firestore document的大小不能超过1 MB。
除非您控制图像的大小,否则最终将很快超出文档限制。然而,如果你使用Cloud Storage for Firebase并且只将网址存储在Cloud Firestore中,你将占用更少的空间。
云存储在存储成本方面也更实惠,例如,如果您决定将头像变大,云存储将不会限制您的存储需求。这种方法的另一个好处是managing the caching,可以加快图像检索速度。
https://stackoverflow.com/questions/66307687
复制相似问题