类型 'FirebaseApp' 中缺少 'performance'
'performance' is missing in type 'FirebaseApp'
我正在尝试在我的应用程序中连接 firebase,但我遇到了同样的错误,我尝试了很多方法,但其中 none 有效。
首先,我安装了 firebase 和 @angular/fire
npm install firebase @angular/fire --save
之后,我将 environment.ts 更改为
export const environment = {
production: false,
firebase: {
apiKey: "XXXXXXXXXXXXXXXXXXXXXXXXX",
authDomain: "XXXXXXXXXXXXXXXXXXXXXXXXXX",
databaseURL: "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
projectId: "XXXXXXXXXXXXXXXXXXXXXXXXXX",
storageBucket: "XXXXXXXXXXXXXXXXXXXXXXXXX",
messagingSenderId: "XXXXXXXXXXXXXXXXXXXX"
}
};
如文档所述。 (我放了 XX,但在真正的 environment.ts o 放了正确的一个)。然后,我将 app.module.ts 更改为
import { NgModule } from '@angular/core';
...
import { AngularFireModule } from '@angular/fire';
import { environment } from '../environments/environment';
@NgModule({
declarations: [AppComponent],
entryComponents: [],
imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule,
AngularFireModule.initializeApp(environment.firebase, 'guarnice')],
providers: [
StatusBar,
SplashScreen,
{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
],
bootstrap: [AppComponent]
})
export class AppModule {}
当我 运行 代码
ionic serve
我遇到了错误。
ERROR in node_modules/@angular/fire/firebase.app.module.d.ts(17,22): error TS2420: Class 'FirebaseApp' incorrectly implements interface 'App'.
Property 'performance' is missing in type 'FirebaseApp'.
然后我找了firebase.app.module.d.ts然后
import { InjectionToken } from '@angular/core';
import { app, auth, database, firestore, functions, messaging, storage } from 'firebase/app';
export declare type FirebaseOptions = {
[key: string]: any;
};
export declare type FirebaseAppConfig = {
[key: string]: any;
};
export declare const FirebaseOptionsToken: InjectionToken<FirebaseOptions>;
export declare const FirebaseNameOrConfigToken: InjectionToken<string | FirebaseAppConfig | undefined>;
export declare type FirebaseDatabase = database.Database;
export declare type FirebaseAuth = auth.Auth;
export declare type FirebaseMessaging = messaging.Messaging;
export declare type FirebaseStorage = storage.Storage;
export declare type FirebaseFirestore = firestore.Firestore;
export declare type FirebaseFunctions = functions.Functions;
export declare class FirebaseApp implements app.App {
name: string;
options: {};
auth: () => FirebaseAuth;
database: (databaseURL?: string) => FirebaseDatabase;
messaging: () => FirebaseMessaging;
storage: (storageBucket?: string) => FirebaseStorage;
delete: () => Promise<void>;
firestore: () => FirebaseFirestore;
functions: (region?: string) => FirebaseFunctions;
}
export declare function _firebaseAppFactory(options: FirebaseOptions, nameOrConfig?: string | FirebaseAppConfig | null): FirebaseApp;
export declare class AngularFireModule {
static initializeApp(options: FirebaseOptions, nameOrConfig?: string | FirebaseAppConfig): {
ngModule: typeof AngularFireModule;
providers: {
provide: InjectionToken<string | FirebaseAppConfig | undefined>;
useValue: string | FirebaseAppConfig | undefined;
}[];
};
}
我不知道我必须如何修复它...我在 Whosebug 和其他网站上看到了一些小技巧,但 none 的技巧有效。
这是我遵循的文档https://github.com/angular/angularfire2
Angular CLI: 7.3.8
Node: 10.15.3
OS: linux x64
Angular: 7.2.13
Ionic: 4.12.0
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.12.4
@angular-devkit/build-angular 0.13.8
@angular-devkit/build-optimizer 0.13.8
@angular-devkit/build-webpack 0.13.8
@angular-devkit/core 7.2.4
@angular-devkit/schematics 7.2.4
@angular/cli 7.3.8
@angular/fire 5.1.2
@ngtools/webpack 7.3.8
@schematics/angular 7.3.8
@schematics/update 0.13.8
rxjs 6.4.0
typescript 3.1.6
webpack 4.29.0
firebaser 在这里
更新:此问题已在 AngularFire2 release 5.1.3 中修复。升级到此版本即可解决问题。
JavaScript 的 5.11.0 版 Firebase SDK,引入了导致 AngularFire2 中断的更改。 AngularFire2 团队在版本 5.1.3 中创建了一个修复程序。或者,您可以坚持使用 Firebase JavaScript SDK 的 v5.10.1
以避免冲突。
这个问题在 AngularFire2 仓库中被跟踪,所以请在这里查看最新信息:https://github.com/angular/angularfire2/issues/2059。
我正在尝试在我的应用程序中连接 firebase,但我遇到了同样的错误,我尝试了很多方法,但其中 none 有效。 首先,我安装了 firebase 和 @angular/fire
npm install firebase @angular/fire --save
之后,我将 environment.ts 更改为
export const environment = {
production: false,
firebase: {
apiKey: "XXXXXXXXXXXXXXXXXXXXXXXXX",
authDomain: "XXXXXXXXXXXXXXXXXXXXXXXXXX",
databaseURL: "XXXXXXXXXXXXXXXXXXXXXXXXXXXX",
projectId: "XXXXXXXXXXXXXXXXXXXXXXXXXX",
storageBucket: "XXXXXXXXXXXXXXXXXXXXXXXXX",
messagingSenderId: "XXXXXXXXXXXXXXXXXXXX"
}
};
如文档所述。 (我放了 XX,但在真正的 environment.ts o 放了正确的一个)。然后,我将 app.module.ts 更改为
import { NgModule } from '@angular/core';
...
import { AngularFireModule } from '@angular/fire';
import { environment } from '../environments/environment';
@NgModule({
declarations: [AppComponent],
entryComponents: [],
imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule,
AngularFireModule.initializeApp(environment.firebase, 'guarnice')],
providers: [
StatusBar,
SplashScreen,
{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
],
bootstrap: [AppComponent]
})
export class AppModule {}
当我 运行 代码
ionic serve
我遇到了错误。
ERROR in node_modules/@angular/fire/firebase.app.module.d.ts(17,22): error TS2420: Class 'FirebaseApp' incorrectly implements interface 'App'. Property 'performance' is missing in type 'FirebaseApp'.
然后我找了firebase.app.module.d.ts然后
import { InjectionToken } from '@angular/core';
import { app, auth, database, firestore, functions, messaging, storage } from 'firebase/app';
export declare type FirebaseOptions = {
[key: string]: any;
};
export declare type FirebaseAppConfig = {
[key: string]: any;
};
export declare const FirebaseOptionsToken: InjectionToken<FirebaseOptions>;
export declare const FirebaseNameOrConfigToken: InjectionToken<string | FirebaseAppConfig | undefined>;
export declare type FirebaseDatabase = database.Database;
export declare type FirebaseAuth = auth.Auth;
export declare type FirebaseMessaging = messaging.Messaging;
export declare type FirebaseStorage = storage.Storage;
export declare type FirebaseFirestore = firestore.Firestore;
export declare type FirebaseFunctions = functions.Functions;
export declare class FirebaseApp implements app.App {
name: string;
options: {};
auth: () => FirebaseAuth;
database: (databaseURL?: string) => FirebaseDatabase;
messaging: () => FirebaseMessaging;
storage: (storageBucket?: string) => FirebaseStorage;
delete: () => Promise<void>;
firestore: () => FirebaseFirestore;
functions: (region?: string) => FirebaseFunctions;
}
export declare function _firebaseAppFactory(options: FirebaseOptions, nameOrConfig?: string | FirebaseAppConfig | null): FirebaseApp;
export declare class AngularFireModule {
static initializeApp(options: FirebaseOptions, nameOrConfig?: string | FirebaseAppConfig): {
ngModule: typeof AngularFireModule;
providers: {
provide: InjectionToken<string | FirebaseAppConfig | undefined>;
useValue: string | FirebaseAppConfig | undefined;
}[];
};
}
我不知道我必须如何修复它...我在 Whosebug 和其他网站上看到了一些小技巧,但 none 的技巧有效。
这是我遵循的文档https://github.com/angular/angularfire2
Angular CLI: 7.3.8
Node: 10.15.3
OS: linux x64
Angular: 7.2.13
Ionic: 4.12.0
Package Version
-----------------------------------------------------------
@angular-devkit/architect 0.12.4
@angular-devkit/build-angular 0.13.8
@angular-devkit/build-optimizer 0.13.8
@angular-devkit/build-webpack 0.13.8
@angular-devkit/core 7.2.4
@angular-devkit/schematics 7.2.4
@angular/cli 7.3.8
@angular/fire 5.1.2
@ngtools/webpack 7.3.8
@schematics/angular 7.3.8
@schematics/update 0.13.8
rxjs 6.4.0
typescript 3.1.6
webpack 4.29.0
firebaser 在这里
更新:此问题已在 AngularFire2 release 5.1.3 中修复。升级到此版本即可解决问题。
JavaScript 的 5.11.0 版 Firebase SDK,引入了导致 AngularFire2 中断的更改。 AngularFire2 团队在版本 5.1.3 中创建了一个修复程序。或者,您可以坚持使用 Firebase JavaScript SDK 的 v5.10.1
以避免冲突。
这个问题在 AngularFire2 仓库中被跟踪,所以请在这里查看最新信息:https://github.com/angular/angularfire2/issues/2059。