为什么authUser中的displayName不为null,而是检索null? 但是,刷新页面后,它将显示我已更新的displayName。
useEffect(()=>{
const unsubscribe = auth.onAuthStateChanged((authUser)=>{
if(authUser){
//user has logged in
setUser(authUser);
console.log(authUser);
console.log(authUser?.displayName);
db
.collection("users")
.doc(authUser.uid)
.get()
.then((doc)=>{
if(doc.exists){
db
.collection("users")
.doc(authUser.uid)
.get()
.then((doc)=>{
setProfilePicture(doc.data().imageUrl);
})
}
});
}else{
//user has logged out
setUser(null);
}
})
return ()=>{
//perform some cleanup actions
unsubscribe();
}
},[user, username]);
答案 0 :(得分:0)
为什么使用authUser?.displayName,尽管您已经检查了authUser对象是否为null。也许您可以尝试将其删除。或者,您可以提供整个authUser对象而不是屏幕截图。