Angular 14 的 Firebase 身份验证导入是什么

问题描述 投票:0回答:2

https://github.com/angular/angularfire/blob/HEAD/docs/auth/getting-started.md#5-getting-started-with-firebase-authentication

我正在尝试使用

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

的屏幕截图

enter image description here

这是其中之一

node_modules/firebase

enter image description here

我发现我应该使用这个

import
,但正如你所看到的,这条路径不存在。有什么建议吗?

import firebase from 'firebase/compat/app';

firebase firebase-authentication angular14
2个回答
2
投票

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


0
投票

升级到 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) 有人知道我该如何解决这个问题吗??

© www.soinside.com 2019 - 2024. All rights reserved.