簡體   English   中英

我們如何更新 firebase 雲存儲中的現有圖像?

[英]How can we update the existing image in firebase cloud storage?

我在我的 RN 應用程序中使用了react-native-firebase lib

我使用 Firebase Storage 將圖像保存在雲中,因此效果很好,但是

在配置文件屏幕中,我有一個編輯功能,可以用新圖像替換舊圖像,但它只是將新圖像添加到 Firebase 雲存儲,而不是替換它

那么有什么辦法可以用新的替換舊的嗎?

因為我不想在用戶更改他的圖像配置文件時增加我的存儲空間

秒

這是我保存新圖像配置文件的功能

 EditImg = async () => {
    const {uid, avatar} = this.state;
    let providerRef = database().ref(`Providers/users/${uid}`);
    const path = 'Avatar_' + new Date().getTime() + '.jpg';
    const ref = storage().ref(`providers/${uid}/providerGalary/${path}`);
    await ref.putFile(avatar).then(() => {
      ref.getDownloadURL().then(
        img => {
          console.log('img', img);
          providerRef
            .update({
              avatar: img,
            })
            .then(() => console.log('saved to Db Successfully'));
        },
        error => console.log(error),
      );

    });
  };

改變這個:

const path =  'Avatar_' + new Date().getTime() + '.jpg';
    const ref = storage().ref(`providers/${uid}/providerGalary/${path}`);
    await ref.putFile(avatar).then(() => {

進入這個:

const path =  'Avatar_' + uid + '.jpg';
    const ref = storage().ref(`providers/${uid}/providerGalary/${path}`);
    await ref.putFile(avatar).then(() => {

使用uid而不是 new Date ,因為uid將保持不變,因此您將能夠替換圖像而不是添加新圖像

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM