每当用户输入正确的电子邮件/密码时,我都试图在控制台上打印Success
。我输入了一个错误的信息,它可以正常工作,但是如果使用正确的用户,则控制台也不会记录成功或追加到errors
div
document.getElementById("login").addEventListener("click", function(){
var email = $('#email').val();
var password = $('#password').val();
app.auth().signInWithEmailAndPassword(email, password).catch(function(error) {
// Handle Errors here.
var errorCode = error.code;
var errorMessage = error.message;
if (error) {
console.log(error.message)
$("#errors").append(' <br><div class="uk-alert-danger" uk-alert> <a class="uk-alert-close" uk-close></a> <p>'+ error.message + '</p></div> <br>');
}
$("#errors").append(' <br><div class="uk-alert-success" uk-alert> <a class="uk-alert-close" uk-close></a> <p>Login Success, Welcome</p></div> <br>');
console.log("success")
});
});
有人能指出我做错了吗?
答案 0 :(得分:4)
这是因为您尝试在this.props.navigation.setParams({
title: 'xxxx'
})
方法中检测到成功。
由于signInWithEmailAndPassword()
方法返回了Promise,因此您应按以下方式使用catch()
方法:
then()