【发布时间】:2021-08-11 09:58:39
【问题描述】:
我是 FireBase 的初学者,我正在尝试使用 Angular 使用 FireBase 实现 Google 登录。我在 auth 收到上述错误。我特此附上 package.json、package.lock.json 的 login.component.ts 和 dev 依赖项。
login.component.ts
import { Component, OnInit } from '@angular/core';
import * as firebase from 'firebase';
import 'firebase/auth';
import {AngularFireAuth} from 'angularfire2/auth'
@Component({
selector: 'app-login',
templateUrl: './login.component.html',
styleUrls: ['./login.component.css']
})
export class LoginComponent implements OnInit {
constructor(private afAuth:AngularFireAuth) {
firebase.default.database
}
ngOnInit(): void {
}
Login(){
this.afAuth.auth.signInWithRedirect(new firebase.auth.GoogleAuthProvider()) //error due to this line.
}
}
package.json
"dependencies": {
"@angular/animations": "~11.1.0",
"@angular/cdk": "^11.2.12",
"@angular/common": "~11.1.0",
"@angular/compiler": "~11.1.0",
"@angular/core": "~11.1.0",
"@angular/fire": "^6.0.4-canary.9a26fbe",
"@angular/forms": "~11.1.0",
"@angular/localize": "~11.1.0",
"@angular/material": "^11.2.12",
"@angular/platform-browser": "~11.1.0",
"@angular/platform-browser-dynamic": "~11.1.0",
"@angular/router": "~11.1.0",
"@ng-bootstrap/ng-bootstrap": "^9.1.1",
"angularfire2": "^5.4.2",
"bootstrap": "^5.0.1",
"firebase": "^8.6.2",
"firebase-tools": "^9.10.2",
"g": "^2.0.1",
"rxjs": "~6.6.0",
"tslib": "^2.0.0",
"zone.js": "~0.11.3"
},
package-lock.json
...
"@angular/fire": {
"version": "6.0.4-canary.9a26fbe",
"resolved": "https://registry.npmjs.org/@angular/fire/-/fire-6.0.4-canary.9a26fbe.tgz",
"integrity": "sha512-LVskM344FFLQ34Dyc6ngN6n+c8kZODm3T3Sdzu43P4wmpaoocL06/3HMvXlQiwBdE3bH+F+tdGu2VYxgQZCWCA==",
"requires": {
"tslib": "^2.0.0"
}
},
...
"angularfire2": {
"version": "5.4.2",
"resolved": "https://registry.npmjs.org/angularfire2/-/angularfire2-5.4.2.tgz",
"integrity": "sha512-7brktOHPObHgMnCN+QkakyCBr2mnxMxMSVLlEZ7OF70LjFIQz/RV3t5a7cH1SjystbY+kzR3qYvn/irlWs27/Q==",
"requires": {
"@angular/fire": "5.4.2"
},
"dependencies": {
"@angular/fire": {
"version": "5.4.2",
"resolved": "https://registry.npmjs.org/@angular/fire/-/fire-5.4.2.tgz",
"integrity": "sha512-QzB5d1wtqr9jxfsVNv2+569MlfK4/QrrpNy0IngOHdxS4FBbXqMOcx37iv1m2mzJv9zlGUddUX44IZP5Xfb3cw=="
}
}
},
【问题讨论】:
-
你为什么使用旧版本的 angular-fire?在最新版本中,语法略有变化,但您愿意更新您的依赖版本吗?
-
可能是由于教程视频,顺便说一下/我使用的是 angularfire 6.0.4 canary。请向我推荐新语法,我将重新安装它@latest。另一部分是我接受我是 firebase 的初学者,请不要对我的问题投反对票,我们不是来互相帮助的吗?
-
新语法为
import { AngularFireAuth } from '@angular/fire/auth';、import { AngularFirestore } from '@angular/fire/firestore';、import * as firebase from 'firebase/app';。我发现此视频很有帮助,请查看:youtube.com/watch?v=qP5zw7fjQgo&ab_channel=Fireship
标签: javascript angular firebase firebase-authentication angularfire2