gpt4 book ai didi

javascript - 我们如何更新 firebase 云存储中的现有图像?

转载 作者:行者123 更新时间:2023-11-30 19:01:41 26 4
gpt4 key购买 nike

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

我使用 Firebase Storage 将图像保存在云中,所以它工作得很好,但是

在个人资料屏幕中,我有一个编辑功能,可以用新图像替换旧图像,但它只是将新图像添加到 Firebase Cloud Storage 而不是替换它

那么有没有办法用新的替换旧的?

因为我不想在用户更改他的图像配置文件时增加我的存储空间

S

这是我保存新图像配置文件的功能

 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 而不是新的 Date,因为 uid 将保持不变,因此您将能够替换图像而不是添加一个新的

关于javascript - 我们如何更新 firebase 云存储中的现有图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59456890/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com