Firebase抛出错误:未找到模块:错误:默认条件应为最后一个

ehxuflar  于 2023-02-09  发布在  其他
关注(0)|答案(3)|浏览(134)

有趣的是,我已经使用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升级到最新版本,但没有修复该问题。

wtlkbnrh

wtlkbnrh1#

今天早上我将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。

sc4hvdpw

sc4hvdpw2#

我猜问题来自于这里的依赖关系:节点模块/@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 "的下一个版本中修复。

f4t66c6m

f4t66c6m3#

在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

相关问题