所以我做了一个头像选择器,如果我选择了一个图像,我会得到这个错误。
它还应该在头像中显示图像,但它只是向我显示错误。
我怎样才能解决这个问题,并管理它来在头像图标中显示图像?
我的代码:
async function handleFileInputChange(e) {
const files = e.target.files;
const file = files[0];
const storage = firebase.storage();
const usersImageRef = storage
.ref()
.child(`users/${user.uid}/profilepicture.jpg`);
const snap = await usersImageRef.put(file);
const donwloadURL = await snap.ref.getDownloadURL();
setDownloadURL(donwloadURL);
await firebase.auth().updateProfile({ photoURL: donwloadURL });
}
<input
accept="image/*"
className={classes.input}
id="contained-button-file"
multiple
type="file"
onChange={handleFileInputChange}
/>
<label>
<IconButton>
<Avatar
src="../assets/ana.png"
style={{
margin: "10px",
width: "60px",
height: "60px",
}}
/>
</IconButton>
</label>错误:

它看起来是这样的:

发布于 2021-10-02 04:41:54
User对象上存在updateProfile方法,而不是Firebase身份验证实例。尝试像这样重构函数:
const user = firebase.auth().currentUser // <-- .currentUser
if (user) {
await user.updateProfile({ photoURL: donwloadURL });
} else {
console.log("No user logged in!")
}https://stackoverflow.com/questions/69404953
复制相似问题