[AngularFire2] Auth with Firebase auth -- email

First, you need to enable the email auth in Firebase console.

 

Then implement the auth service:

复制代码
  login(email, password) {

    return this.fromFirebaseAuthPromise(this.auth$.login({
      email, password
    },{
      method: AuthMethods.Password,
      provider: AuthProviders.Password
    }));
  }

  fromFirebaseAuthPromise(promise) {
    const subject = new Subject<any>();

    promise.then((res) => {
      subject.next(res);
      subject.complete();
    }, err => {
      subject.error(err);
      subject.complete();
    });

    return subject.asObservable();
  }
复制代码

Because login method return Promise, we need to convert it to Observable. The way we do it is using 'subject'.

 

Controller:

  login(){
    const formValue = this.form.value;

    this.authService.login(formValue.email, formValue.password)
      .subscribe((res) => {
         this.router.navigate(['/home']);
      })
  }

 

posted @   Zhentiw  阅读(302)  评论(0编辑  收藏  举报
编辑推荐:
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具
历史上的今天:
2014-11-20 [ES6] 07. Default Value for function param
2014-11-20 [ES6] 06. Arrow Function =>
2013-11-20 5. How to set up a Activity
2013-11-20 4. Add override methods to class
2013-11-20 3. Layout -- 1
2013-11-20 2. Using 'dp' instead of 'px' to set text size
2013-11-20 1. Change the emulator screen size
点击右上角即可分享
微信分享提示