[英]Facing issue while using GoogleAuthProvider() method
How to use GoogleAuthProvider()
method in angular app for authentication in login method?如何在angular应用程序中使用
GoogleAuthProvider()
方法在登录方法中进行身份验证?
Angular version: ^12.2.7
"@angular/fire": "^7.0.4",
"firebase": "^9.1.0",
import { Injectable } from '@angular/core';
import { AngularFireAuth } from '@angular/fire/compat/auth';
// import { AngularFireAuth } from '@angular/fire/auth';
import { AngularFirestore } from '@angular/fire/compat/firestore';
import { ActivatedRoute, Router } from '@angular/router';
import { Observable, of } from 'rxjs';
import { switchMap } from 'rxjs/operators';
import { AppUser } from '../models/appuser';
import * as firebase from 'firebase/compat/app';
import { GoogleAuthProvider } from "firebase/auth";
I'm getting error at:我在以下位置遇到错误:
firebase.GoogleAuthProvider(). async login() { const returnUrl = this.route.snapshot.queryParamMap.get('returnUrl') || this.router.url;
localStorage.setItem('returnUrl', returnUrl);
const credential = await this.afAuth.signInWithPopup(new firebase.GoogleAuthProvider());
return this.updateUserData(credential.user); }
You can try importing GoogleAuthProvider like this:您可以尝试像这样导入 GoogleAuthProvider:
import { GoogleAuthProvider } from "firebase/auth"
// ...signInWithPopUp(new GoogleAuthProvider())
If you want to use that firebase.auth
namespace then you might have to downgrade Firebase to "8.XX"
or use compat version for imports:如果您想使用
firebase.auth
命名空间,那么您可能必须将 Firebase 降级为"8.XX"
或使用兼容版本进行导入:
// Add compat if using V9
import firebase from "firebase/compat/app";
import "firebase/compat/auth"
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.