如何在firebase onAuthStateChanged()中使条件正确?

时间:2018-04-13 09:22:57

标签: firebase react-native firebase-authentication conditional react-navigation

我正在firebase进行react native登录。当用户登录时,我希望导航转到另一个视图。它使用我正在使用的代码来实现。问题是,我没有得到正确的条件,这使得导航语句无限期地触发。这是代码:

  componentDidMount() {
fbAuth.onAuthStateChanged(user => this.myFunc(user));
}

myFunc(user) {
   if (user) {
     console.log("LOGGED IN");
     console.log(user);
     this.props.navigation.navigate("LoggedIn"); 
   } else {
     console.log("LOGGED OUT");
   }
}

当然,导航语句无限期运行是有道理的,因为user作为参数传递。老实说,我不太明白user实际代表什么。在控制台上打印,它只是写了很多不同的信息。我想要的是这样的:if(userHasSuccessfullyLoggedIn)任何想法?

修改 问题: *一进入页面,导航就会因某种原因而触发。 *如果我返回并输入正确的邮件并通过登录工作,但由于某种原因导航被触发两次。 *注册新帐户也会触发导航两次。

0 个答案:

没有答案