javascript - Firebase 电话身份验证后根据用户的角色重定向用户

标签 javascript firebase firebase-authentication ionic4 firebaseui

我已使用 firebase-UI 电话身份验证登录用户。如果用户首次登录,我会将用户重定向到“详细信息”页面,如果用户是旧用户,则会重定向到“验证”页面。但我的行为有所不同。用户首先重定向到正确的页面(验证或详细信息),然后该页面被刷新,然后重定向到主页,最后根据用户是新用户还是老用户重定向到验证或详细信息页面。

我也收到此警告

Navigation triggered outside Angular zone, did you forget to call 'ngZone.run()'?

warn @ core.js:33461

这是我的代码

 this.afauth.auth.onAuthStateChanged(user => {
  if(user) {
    let x = this.afauth.auth.currentUser.metadata
    console.log(x)
      if(x.creationTime == x.lastSignInTime) {
        console.log("new user")
       // this.navCtrl.navigateRoot(['details'])
        console.log(this.afauth.auth.currentUser.phoneNumber)
        let navigationExtras: NavigationExtras = {
          state: {
            user: this.afauth.auth.currentUser.phoneNumber
          }
        };
        this.router.navigate(['details'], navigationExtras);
       

      }
      else{
        console.log("old user")
      
        let navigationExtras: NavigationExtras = {
          state: {
            user: this.afauth.auth.currentUser.phoneNumber
          }
        };
        this.router.navigate(['verification'], navigationExtras);
      }
    
  }
  else {
    console.log("something wnt wrong")
  }
})

最佳答案

已解决。在我的 firebasui 配置中,signflow 被重定向到主页

关于javascript - Firebase 电话身份验证后根据用户的角色重定向用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58498365/

相关文章:

java - 在代码运行以更新值之前返回值的方法

javascript - CORS 不适用于 firebase 云功能中的特定域

javascript - Angular - 根据操作显示/隐藏表单

javascript - 如何将函数的结果从外部 javascript 脚本返回到 pug 文件?

android - Firebase电话身份验证限制

swift - 如何知道 fetchProviders() 何时完成执行?

ios - 您能否只允许具有特定电子邮件地址的用户注册和使用您的应用程序

javascript - PhoneGap 在单页上禁用屏幕旋转?

javascript - React history.push 重新加载组件。希望它只加载一次

firebase - RNFirebase 邮箱验证