我正在尝试使用
new firebase.authGoogleAuthProvider()
,但无法导入 firebase
。我已经安装了:
"dependencies": {
"@angular/common": "^14.0.0",
"@angular/core": "^14.0.0",
"@angular/fire": "^7.4.1",
"@angular/forms": "^14.0.0",
"@angular/platform-browser": "^14.0.0",
"@angular/platform-browser-dynamic": "^14.0.0",
"@angular/router": "^14.0.0",
"@ionic-native/google-plus": "^5.36.0",
"@ionic-native/sign-in-with-apple": "^5.36.0",
"@ionic/angular": "^6.1.9",
"@jest/globals": "^28.1.1",
"@microsoft/applicationinsights-web": "^2.8.5",
"angularfire2": "^5.4.2",
"cordova-plugin-googleplus": "^8.5.2",
"cordova-plugin-sign-in-with-apple": "^0.1.2",
"firebase": "^7.9.0",
"rxjs": "~6.6.0",
"tslib": "^2.2.0",
"zone.js": "~0.11.4"
},
这是
node_modules/@firebase
的屏幕截图
这是其中之一
node_modules/firebase
我发现我应该使用这个
import
,但正如你所看到的,这条路径不存在。有什么建议吗?
import firebase from 'firebase/compat/app';
firebase/compat 仅出现在 firebase v9 中,我看到您在包 json 中使用
"firebase": "^7.9.0"
,因此 npm 将安装 v8 之前的最新版本。
要检查已安装的 firebase 版本 - 请参阅 node_modules/firebase 目录中的 package.json 文件。
要按照指南使用
import firebase from 'firebase/compat/app';
- 更新 package.json 文件中的 firebase 版本并重新运行 npm install。最新版本是 9.9.0
所以它将是 "firebase": "~9.9.0"
或 "firebase": "^9.9.0"
更多详细信息请访问 https://firebase.google.com/docs/web/modular-upgrade
升级到 Angular 版本 14 和 Firebase 版本 9.9.0 后出现此错误 错误:组件身份验证尚未注册 在 Provider.initialize (index.esm2017.js:232:19) 在新的身份验证 (index.esm2017.js:654:35) 在instance.INTERNAL.registerComponent.firebase_component__WEBPACK_IMPORTED_MODULE_3_.Component.setServiceProps.ActionCodeInfo.Operation.EMAIL_SIGNIN [作为instanceFactory](index.esm2017.js:972:16) 在 Provider.getOrInitializeService (index.esm2017.js:290:39) 在 Provider.getImmediate (index.esm2017.js:128:29) 在 FirebaseAppImpl._getService (index.esm2017.js:83:25) 在 firebaseAppImpl 处。 [作为身份验证] (index.esm2017.js:291:39) 在 Angular-Fire-compat-auth.js:59:51 在 _ZoneDelegate.invoke (zone.js:372:26) 在 Zone.run (zone.js:134:43) 有人知道我该如何解决这个问题吗??