我正在尝试构建要在Firebase上部署的角度项目,但是由于以下错误,我无法运行npm run build
甚至npm start
命令。
node_modules/@angular/fire/database/interfaces.d.ts(2,26)中的错误: 错误TS2307:找不到模块“ firebase / app”。 node_modules/@angular/fire/firebase.app.module.d.ts(2,79):错误 TS2307:找不到模块“ firebase / app”。
我已经回答了过去的问题,并清除了node_modules
文件夹和package-lock.json
文件,并重新安装了所有依赖项。我仍然不断收到此错误。
这是我在应用程序中使用的内容:
"@angular/animations": "^5.2.0",
"@angular/common": "^5.2.0",
"@angular/compiler": "^5.2.0",
"@angular/core": "^5.2.0",
"@angular/forms": "^5.2.0",
"@angular/http": "^5.2.0",
"@angular/platform-browser": "^5.2.0",
"@angular/platform-browser-dynamic": "^5.2.0",
"@angular/router": "^5.2.0",
"angularfire2": "^5.1.1",
"bootstrap": "^4.1.3",
"core-js": "^2.4.1",
"firebase": "^5.7.0",
"jquery": "^3.3.1",
"particles.js": "^2.0.0",
"rxjs": "^5.5.6",
"zone.js": "^0.8.19"
有人可以帮我这个忙吗?先感谢您。
干杯!
答案 0 :(得分:3)
也许尝试使用angularFire2,它似乎是有角的火力库lib;-)
此Firebase issue似乎是相同的。
另外,这个angularFire2 Stackblitz演示正为我工作。
编辑:
最后但并非最不重要的一点是,您可能会更新角度版本(尝试使用angular6或7)。
从firebase问题中引用:
我还注意到您使用的是Angular5。是否可以升级到 angular6或7,并使用新的cli来查看问题是否仍然存在? AngularFire项目似乎没有这个问题,而且他们还在 angular6:https://github.com/angular/angularfire2
答案 1 :(得分:1)
根据@zerocewl的建议,我将angularFire2更改为@ angular / fire。
不仅在npm install
,而且在app.module.ts
。已安装npm-check-updates
和
然后我使用ncu -u
和npm install
将所有内容更新为最新版本。
通过降级到版本3.1.6解决了打字稿问题:
Angular编译器中的ERROR要求TypeScript> = 3.1.1和<3.2.0 但是找到了3.2.2。
然后它起作用了!