【问题标题】:Angular Firebase not able to invoke Reset PasswordAngular Firebase 无法调用重置密码
【发布时间】:2019-06-10 07:56:02
【问题描述】:

当我尝试调用此函数时,我的代码抛出错误 Uncaught TypeError: _baseUrl.resetPassword is not a function

以下是我如何配置 firebase 对象

    var firebaseConfig = {
        apiKey: "my api key",
        authDomain: "my-domain.firebaseapp.com",
        databaseURL: "https://collection-name.firebaseio.com",
        projectId: "my-project-id-1111",
        storageBucket: "my-storage-bucket.appspot.com",
        messagingSenderId: "XXXXXXXXXX",
        appId: "1:XXXXXXXXX:web:XXXXXXXXXX"
        };

    // Initialize Firebase
    var _firebase = firebase.initializeApp(firebaseConfig);
    var _baseUrl = _firebase.database().ref("web/data");
    var _baseAuth = _firebase.auth();

    function resetPassword(userEmail) {
        _baseUrl.resetPassword({
            email: userEmail
        }, function(error) {
            console.log(error);
            if (error === null) {
                return false;
            } else {
                return error;
            }
        });
    }

当我调用 resetPassowrd 函数时,它会引发错误。 Uncaught TypeError: _baseUrl.resetPassword is not a function

我已通过调试检查我在函数中收到“_baseUrl”,但它没有方法 resetPassword

请帮助并提前致谢

【问题讨论】:

    标签: angularjs firebase angular1.6


    【解决方案1】:
    var firebaseConfig = {
            apiKey: "my api key",
            authDomain: "my-domain.firebaseapp.com",
            databaseURL: "https://collection-name.firebaseio.com",
            projectId: "my-project-id-1111",
            storageBucket: "my-storage-bucket.appspot.com",
            messagingSenderId: "XXXXXXXXXX",
            appId: "1:XXXXXXXXX:web:XXXXXXXXXX"
            };
    
        // Initialize Firebase
        var _firebase = firebase.initializeApp(firebaseConfig);
        var _baseUrl = _firebase.database().ref("web/data");
        var _baseAuth = _firebase.auth();`enter code here`
    
    
             function resetPassword(userEmail) {
               _baseAuth.sendPasswordResetEmail(
                    userEmail, actionCodeSettings=null)
                    .then(function() {
                      console.log('email sent');
                    })
                    .catch(function(error) {
                      console.log('error occurred');
                    });
    
    
    
            }
    

    我已经使用此功能重置密码,它工作正常。

    【讨论】:

      最近更新 更多