Angular和Firebase的问题:身份验证和用户

Angular和Firebase的问题:身份验证和用户,angular,typescript,firebase,Angular,Typescript,Firebase,我正在和Firebase一起做一个项目。导入auth和User时,在auth.service.ts文件中,Visual Studio代码无法识别它们 import { auth } from 'firebase/app'; import { User } from 'firebase'; import { AngularFireAuth } from '@angular/fire/auth' @Injectable() export class AuthService { public

我正在和Firebase一起做一个项目。导入auth和User时,在auth.service.ts文件中,Visual Studio代码无法识别它们

import { auth } from 'firebase/app';
import { User } from 'firebase';

import { AngularFireAuth } from '@angular/fire/auth'

@Injectable()
export class AuthService {
  public user:User;

  constructor(public afAuth: AngularFireAuth) { }

  async login( email:string, password:string){}
  register(){}
  logout(){}
  getCurrentUser(){}

}
我的问题在于:

从'firebase/app'导入{auth}

从“firebase”导入{User}

请帮忙

我有一个错误:
声明了此:“auth”,但从未读取其值。ts(6133)模块“../../../../../../node_modules/firebase”没有导出的成员“auth”。您的意思是使用“从“../../../../../node_modules/firebase”导入身份验证吗?ts(2614)。-


并且:导入用户模块“../../../../../node_modules/firebase”没有导出的成员“User”。您是想使用“从“../../../../node_modules/firebase”导入用户”吗?ts(2614)–

AngularFireAuth
是一个包装类,因此您不需要
auth
。正如错误所述,
firebase
包没有名为
User
auth
的导出成员。。您可以查看有关如何使用的文档:

从'@angular/core'导入{Component};
从'@angular/fire/auth'导入{AngularFireAuth};
从“firebase/app”导入firebase;
@组成部分({
选择器:'应用程序根',
模板:`
你好{{user.displayName}}!
注销
请登录

使用谷歌登录 `, }) 导出类AppComponent{ 构造函数(公共授权:AngularFireAuth){ } 登录(){ this.auth.signInWithPopup(新的firebase.auth.GoogleAuthProvider()); } 注销(){ this.auth.signOut(); } }
您收到了什么错误消息?声明了“auth”,但从未读取其值。ts(6133)模块“../../../../../../node_模块/firebase”没有导出的成员“auth”。您的意思是使用“从“../../../../../../node_模块/firebase”导入身份验证吗?ts(2614)。并且此:导入用户模块“../../../../../node_模块/firebase”没有导出的成员“用户”。您的意思是使用“从“../../../../../node_模块/firebase”导入用户”吗?ts(2614)
import { Component } from '@angular/core';
import { AngularFireAuth } from '@angular/fire/auth';
import firebase from 'firebase/app';

@Component({
  selector: 'app-root',
  template: `
    <div *ngIf="auth.user | async as user; else showLogin">
      <h1>Hello {{ user.displayName }}!</h1>
      <button (click)="logout()">Logout</button>
    </div>
    <ng-template #showLogin>
      <p>Please login.</p>
      <button (click)="login()">Login with Google</button>
    </ng-template>
  `,
})
export class AppComponent {
  constructor(public auth: AngularFireAuth) {
  }
  login() {
    this.auth.signInWithPopup(new firebase.auth.GoogleAuthProvider());
  }
  logout() {
    this.auth.signOut();
  }
}