【问题标题】:No firebase.app.App instance is currently initialized in Angular Application当前在 Angular 应用程序中没有初始化 firebase.app.App 实例
【发布时间】:2020-05-10 13:15:53
【问题描述】:

我在 Web 应用程序中使用 firebase 移动身份验证,当我使用 recaptchaVerifier 时,当没有显示 recaptchaVerifier 并给出此错误时,我很想在项目中使用实时数据库,它工作正常但不知道为什么移动身份验证模块是不工作 app.module.ts

import { environment } from './../environments/environment';

进口:[ AngularFireModule.initializeApp(environment.firebaseConfig)]

component.module.ts

ngOnInit() {


this.windowRef = this.win.windowRef
this.windowRef.recaptchaVerifier = new firebase.auth.RecaptchaVerifier('recaptcha-container')

this.windowRef.recaptchaVerifier.render()

}

请帮我解决这个问题!

【问题讨论】:

    标签: javascript angular firebase firebase-authentication


    【解决方案1】:

    您需要使用 initializeApp 方法初始化 firebase 实例

    在组件的 ngOnInit() 函数中,在创建 RecaptchaVerifier 之前添加以下行。

    firebase.initializeApp(config);
    this.windowRef.recaptchaVerifier.render()
    

    【讨论】:

      【解决方案2】:

      初始化 firebase 配置的正确位置是在 app 模块下。你做对了。只需添加 2 到 3 秒的延迟,如下所示。它不会给出任何错误。看起来初始化 firebase 配置需要几秒钟的时间。

      ngOnInit() {
      
      setTimeout(() => {
           this.windowRef = this.win.windowRef
           this.windowRef.recaptchaVerifier = new firebase.auth.RecaptchaVerifier('recaptcha-container')
      
           this.windowRef.recaptchaVerifier.render()
      
      }, 2000);
      
      }
      

      【讨论】:

        猜你喜欢
        • 2019-04-30
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-09-05
        • 1970-01-01
        • 2018-01-16
        • 1970-01-01
        相关资源
        最近更新 更多