【问题标题】:Implement forgot password functionality实现忘记密码功能
【发布时间】:2017-07-06 00:40:24
【问题描述】:

我需要有关 Ionic 2 应用程序的帮助。我正在使用 angularfire2 与 firebase 连接:https://github.com/angular/angularfire2

我的应用正在运行、保存用户和管理身份验证。现在我需要知道如何实现“忘记密码”功能。

我看不到使用这个库的任何方法,但在 firebase 官方文档中是的。但我不知道我是否可以将它包含在 Ionic 2 项目中。

有人可以帮助我吗?

提前致谢!

伊万。

【问题讨论】:

    标签: angular firebase ionic2 angularfire2


    【解决方案1】:

    您需要为此使用 firebase.auth 库。

    使用这个你可以使用firebase().auth().sendPasswordResetEmail(email).then(res => {});来访问这个功能。

    您可以在任何您想要的地方使用它,在用户将调用“忘记密码”方法或提供程序的页面的 .ts 文件中使用它。

    这样做:

    import * as firebase from 'firebase';
    
    export class MyCurrentPage {
    
      constructor(){}
    
      forgotPass(){
        // SOMETHING TO INTERACT WITH THE USER, THEN...
        firebase().auth().sendPasswordResetEmail(email).then(res => {});
      }
    }
    

    我不知道AngularFire是否还在用它安装firebase,如果没有你需要安装它。

    希望对你有帮助

    【讨论】:

      【解决方案2】:

      如果您正在使用 AngularFire2 并且想将其放入服务中。这应该做。它将返回一个 observable。

      import { Injectable, Inject } from "@angular/core";
      import { FirebaseApp } from "angularfire2";
      import { Observable } from "rxjs";
      
      @Injectable()
      export class UserService {
      
          firebase: any;
      
          constructor(@Inject(FirebaseApp) fb: any) {
              this.firebase = fb;
          }
      
          forgotPassword(email: string) {
              return Observable.fromPromise(this.firebase.auth().sendPasswordResetEmail(email));
          }
      
      }
      

      【讨论】:

      • 太好了,如果有人使用 angularfire2,这可能很有用。最后,我使用了提到 @Sagar Arora 提供的教程的本机 firebase 库。我不知道我的项目中已经有那个库。 LOL 菜鸟错误
      • 很高兴这有帮助:)
      猜你喜欢
      • 2015-02-03
      • 2010-10-06
      • 2018-11-11
      • 2013-12-09
      • 2011-10-19
      • 2011-09-28
      • 1970-01-01
      • 2012-02-22
      • 2018-01-20
      相关资源
      最近更新 更多