0

用户注册后,会通过 Firebase 向他们的电子邮件地址发送一个确认链接。如果帐户未经过验证,则用户无法与应用程序上的任何内容进行交互。验证帐户后,React 状态会更改,从而在应用程序上启用元素,以便用户可以开始交互。有什么方法可以监听当前用户的 auth 对象的变化,以便在用户点击确认链接后状态可以改变?

我尝试设置这样的计时器,但它实际上并没有currentUser.emailVerified实时检查:

timer.addEventListener('secondsUpdated', () => {
  this.setState({ timer: timer.getTimeValues().seconds });

  this.forceUpdate();

  console.log(auth.currentUser.emailVerified);

  auth.onAuthStateChanged(user => {
    console.log(user.emailVerified);
  });
});

false即使在用户单击确认链接后,两个日志也会返回。如果用户的帐户经过验证,我不想强​​迫用户必须刷新页面才能启用元素。有任何想法吗?

4

0 回答 0