部署到Firebase托管后如何修复“ ERROR NullInjectorError”

时间:2019-05-22 08:21:07

标签: firebase angular7

在Angular7中将我的项目部署到Firebase托管后,出现错误:“ ERROR NullInjectorError:StaticInjectorError(i)[s-> class {constructor(e,t,n,r,i)...”。 >

我不得不说,在我的本地主机上一切正常,并且没有任何错误。但是当我将其部署到Firebase托管时,出现空白页面,上面出现此错误。

经过大量检查后,我了解到问题出在我的服务构造函数中,我尝试创建一个AngularFireAuth实例,而不是从我的构造函数中调用它,但它没有初始化它。 我还尝试重新安装firebase软件包,但也无法正常工作。

这是我的服务和我的app.module:

//FirebaseAuthService 

import { Injectable } from '@angular/core';
import { AngularFireAuth } from 'angularfire2/auth';
import * as firebase from 'firebase';

@Injectable({
  providedIn: 'root'
})
export class FirebaseAuthService {
  constructor(private afAuth :AngularFireAuth){
      console.log(afAuth);
  }

  login(){
      this.afAuth.auth.signInWithRedirect(new firebase.auth.GoogleAuthProvider());
  }
  logout(){
    this.afAuth.auth.signOut();
  }
}

//app module
import { environment } from './../environments/environment';
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';

//firebase
import { AngularFireModule } from 'angularfire2';
import { AngularFireDatabaseModule } from 'angularfire2/database';
import { AngularFireAuthModule } from 'angularfire2/auth';

//components
import { LoginComponent } from './login/login.component';

//services
import { FirebaseAuthService } from './firebase-Auth.service';

@NgModule({
  declarations: [
    AppComponent,
    LoginComponent,
  ],
  imports: [
    BrowserModule,
    AngularFireModule.initializeApp(environment.firebase),
    AngularFireDatabaseModule,
    AngularFireAuthModule,
  ],
  providers: [FirebaseAuthService],
  bootstrap: [AppComponent,LoginComponent]
})
export class AppModule { }

0 个答案:

没有答案