我在自定义库中使用angularFire2
@NgModule({
imports: [
CommonModule,
AngularFireModule.initializeApp(firebaseConfig),
AngularFirestoreModule
]
})
export class CustomModule {
static forRoot(firebaseConfig: FirebaseOptions): ModuleWithProviders {
return {
...
}
}
}
使用者库调用CustomModule.forRoot({config ...})
我的问题是如何在AngularFireModule.initializeApp(firebaseConfig)中提供配置数据?
答案 0 :(得分:2)
几周前,我遇到了这个问题,您需要做的是在导入部分中删除initializeApp
调用,并将FirebaseOptionsToken
添加到您的forRoot
声明中,如下所示:
@NgModule({
imports: [
CommonModule,
AngularFireModule,
AngularFirestoreModule
]
})
export class CustomModule {
static forRoot(firebaseConfig: FirebaseOptions): ModuleWithProviders {
return {
ngModule: CustomModule,
providers: [
{ provide: FirebaseOptionsToken, useValue: firebaseConfig }
]
}
}
}
如果您查看initializeApp
方法in Angular/Fire,则会发现它在调用时是如何做的。
它对我有用,希望能帮助其他遇到相同问题的人。