gpt4 book ai didi

javascript - firebase登录成功后回调?

转载 作者:行者123 更新时间:2023-11-28 14:36:44 27 4
gpt4 key购买 nike

我尝试将 Firebase 与大部分纯 HTML/CSS/Javascript 应用程序一起使用。

我获得了以下函数来处理登录 firebase (来自他们的 documentation )。

firebase.auth().signInWithEmailAndPassword(email, password).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
// ...
});

显然,如果有人尝试登录时发生错误,就会调用一个函数来处理错误。

我的问题是我希望在 Firebase 成功登录后立即发生一些逻辑(而不仅仅是在登录不成功后)。有没有办法做到这一点(例如回调)?

最佳答案

docs假设此方法返回一个 firebase.Promise

Promise 是异步的,并使用回调 then( onSuccess, onFailure )catch( onFailure ) 进行处理,因此您可以在其中任何一个中使用您的逻辑。

不幸的是,文档没有说明将哪些参数传递给 onSuccess 方法,但您始终可以尝试:

signInWithEmailAndPassword( email, password )
.then( function onSuccess( ...args ) {
console.log( 'onSuccess', args );
} )
.catch( function onFailure( err ) {
console.log( 'onFailure', err );
} );

编辑,正如 @Herohtar 所指出的,并在 https://stackoverflow.com/a/39958673/344477 中回答。看起来使用 signInWithEmailAndPassword 并不是跟踪 auth 状态的最佳方法,因为它在页面刷新等后不会被调用。

跟踪用户是否登录的最佳方法是 onAuthStateChanged 方法。

关于javascript - firebase登录成功后回调?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49682488/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com