当我尝试构建离子应用程序时出错。 实际上,当我在本地构建时,这不是一个问题,但是当我在离子网站中检查构建状态时,我得到了一个波纹管错误。
是 angular5,ionic3
typescript:node_modules / angularfire2 / firebase.app.module.d.ts,第10行: Class' FirebaseApp'错误地实现了界面' FirebaseApp'。属性 ' automaticDataCollectionEnabled'类型' FirebaseApp'中缺少。
L9: export declare const FirebaseAppConfigToken: InjectionToken;
L10: export declare class FirebaseApp implements FBApp {
L11: name: string;
我不知道。我应该降级firebase版本吗?
更新
我编辑firebase.app.module.d.ts
就像答案一样,但我现在又遇到了另一个错误。我这样编辑了.gitignore
。
node_modules/*
!node_modules/angularfire2/firebase.app.module.d.ts
npm WARN angularfire2@5.0.0-rc.6.0需要同行 @ firebase / app @ ^ 0.1.6但没有安装。
npm ERR!无效的tar标头。也许tar已损坏或需要 被枪杀?
npm ERR!可以在以下位置找到此运行的完整日志:npm ERR!
/home/gitlab-runner/.npm/_logs/2018-04-20T07_49_29_110Z-debug.log
答案 0 :(得分:5)
我用npm install @firebase/app@0.1.10
解决了。
错误不会发生并且会成功。
答案 1 :(得分:4)
我解决了这个问题,添加了这一行:
automaticDataCollectionEnabled:boolean;
在文件上:
node_modules / angularfire2 / firebase.app.module.d.ts
最终结果:
{{1}}
答案 2 :(得分:0)
您必须将属性 automaticDataCollectionEnabled 添加到 FirebaseApp 类(node_modules / angularfire2 / firebase.app.module.d.ts)。
export declare class FirebaseApp implements FBApp {
name: string;
options: {};
automaticDataCollectionEnabled: boolean; // add it like this
auth: () => FirebaseAuth;
database: () => FirebaseDatabase;
messaging: () => FirebaseMessaging;
storage: () => FirebaseStorage;
delete: () => Promise<any>;
firestore: () => FirebaseFirestore;
}
答案 3 :(得分:0)
npm i @firebase/app@^0.1.6
这对我有用。正如警告所说,firebase / app需要单独安装。是否和我的项目编译成功。