firebase @Angular /击发投掷错误:未找到模块:错误:默认条件应为最后一个

qmb5sa22  于 2023-02-05  发布在  Angular
关注(0)|答案(5)|浏览(131)

有趣的是,我已经使用AngularCrashlytics(from @angular/fire)一段时间了,从今天早上开始,我无法获得buildng serve,这会引发以下错误。有人能帮我摆脱这个错误吗?

app.module上,我已经添加了@angular/fire相关配置步骤,如下所示(摘自https://github.com/angular/angularfire/blob/master/docs/analytics/getting-started.md

import { AngularFireModule } from '@angular/fire/compat';
import { AngularFireAnalyticsModule } from '@angular/fire/compat/analytics';

imports:[
AngularFireModule.initializeApp(environment.Tools.Firebase)//firebase releated config,
AngularFireAnalyticsModule
]

我的配置如下所示,ng version

package.json中的依赖项版本

"firebase": "^9.14.0",
"@angular/fire": "^7.4.1"

附加注解:已经从零开始克隆项目多次尝试删除node modules文件夹和npm install,此外还尝试将firebase和@angular/fire升级到最新版本,但没有修复该问题。

t40tm48m

t40tm48m1#

这个问题还没有得到解决。2个小时前一切正常,但突然这些错误开始弹出@angular/firebase。
我尝试将firebase更新并覆盖到^9.8.0。但仍然存在2个错误。

y53ybaqx

y53ybaqx2#

今天早上我将Angular从15.1.2更新为15.1.3:

这引发了34个错误,均涉及AngularFire:

Error: export 'GoogleAuthProvider' (imported as 'GoogleAuthProvider') was not found in '@angular/fire/auth'

./node_modules/@angular/fire/fesm2015/angular-fire-analytics.js:7:0-47 - Error: Module not found: Error: Default condition should be last one

我尝试在package.json中使用overrides,但是npm install拒绝运行覆盖,抛出EOVERRIDE错误。npm install --force没有帮助。
我通过不使用overrides,而是将“^15.0.0”更改为“15.1.2”,然后运行npm install --force来修复它。
我不明白为什么overrides不起作用。我可能会问一个关于这个的问题。
我会等到新版本的AngularFire发布后再更新到最新的Angular。

c90pui9n

c90pui9n3#

我猜问题来自于这里的依赖关系:节点模块/@Angular /fire/包. json

"dependencies": {
  "firebase": "^9.8.0",

如下所述:www.example.comhttps://github.com/firebase/firebase-js-sdk/issues/7005#issuecomment-1415807037
删除版本中的^为我解决了这个问题。
我在我的项目package.json中这样做来覆盖它:

{
  "name": "myproject",
  "version": "0.0.0",
  "scripts": ...
  "dependencies": ...
  "devDependencies": {
    ...
  },  
  "overrides": {
    "@angular/fire": {
      "firebase": "9.8.0"
    }
  },

然后运行"npm install"来应用它。
应在"@angular/fire "的下一个版本中修复。

fjnneemd

fjnneemd4#

在package.json中添加以下代码:

"overrides": {
    "@angular/fire": {
      "firebase": "9.8.1"
    }
  }

来自fire的版本为:“@角/火”:“^7.4.1”和npm 8.5.0的节点16.14.2删除rm -r节点_模块package-lock.json .angular仅npm而非Yarn

crcmnpdw

crcmnpdw5#

谢谢你们,我把这个@angular/fire降级到“7.4.1”,它又能工作了。我还不知道为什么会这样,但是我可以重新开始我的项目了:-)

相关问题