如何使用其范围之外的firebase函数返回的值?

时间:2017-03-10 15:28:00

标签: javascript function reactjs scope

我有这个功能:

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是什么)。如何返回变量,使其具有我期望在范围之外的值,以便我可以用它设置状态?

0 个答案:

没有答案