我有这个功能:
let userDisplayName;
firebase.auth().onAuthStateChanged(function(user){
if (user){
userDisplayName = user;
}
else {
console.log('error');
}
this.setState ({user: userDisplayName})
return userDisplayName;
})
console.log(userDisplayName, 'udn');
userDisplayName
正在给我正确的值,但仅限于函数的范围。当我console.log
我被告知该值未定义时,当我尝试setState
时,我被告知我不能在那里使用该函数(不知道this
是什么)。如何返回变量,使其具有我期望在范围之外的值,以便我可以用它设置状态?