![](/img/trans.png)
[英]How update an image from Expressjs to Google Cloud Storage / Firebase Storage
[英]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.