在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 { }