Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/390.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Firebase.js:身份验证不会';I don’我没有按预期工作_Javascript_Firebase_Firebase Authentication - Fatal编程技术网

Javascript Firebase.js:身份验证不会';I don’我没有按预期工作

Javascript Firebase.js:身份验证不会';I don’我没有按预期工作,javascript,firebase,firebase-authentication,Javascript,Firebase,Firebase Authentication,每当用户输入正确的电子邮件/密码时,我都试图在控制台上打印Success。我输入了一个错误的信息,但如果用户正确,控制台不会记录成功或附加到错误div document.getElementById("login").addEventListener("click", function(){ var email = $('#email').val(); var password = $('#password').val();

每当用户输入正确的电子邮件/密码时,我都试图在控制台上打印
Success
。我输入了一个错误的信息,但如果用户正确,控制台不会记录成功或附加到
错误
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")


         });
 });
document.getElementById(“登录”).addEventListener(“单击”,函数(){
var email=$('#email').val();
var password=$('#password').val();
app.auth(){
//在这里处理错误。
var errorCode=error.code;
var errorMessage=error.message;
如果(错误){
console.log(错误消息)
$(“#errors”).append(“
”+error.message+”


”); } $(“#错误”).append(“
登录成功,欢迎光临”); console.log(“成功”) }); });

有人能指出我做错了什么吗?

这是因为您试图在
catch()
方法中检测成功

由于该方法返回一个承诺,您应该使用
then()
方法,如下所示:

 document.getElementById("login").addEventListener("click", function(){
            var email = $('#email').val();
            var password = $('#password').val();
            app.auth().signInWithEmailAndPassword(email, password)
             .then(function(userCredential) {
                    console.log(userCredential.user);
                    $("#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")
             })
             .catch(function(error) {
             // Handle Errors here.
               var errorCode = error.code;
               var errorMessage = error.message;

               // if (error) { // Not needed anymore
                   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>');


         });
 });
document.getElementById(“登录”).addEventListener(“单击”,函数(){
var email=$('#email').val();
var password=$('#password').val();
app.auth().signiWithEmailandPassword(电子邮件,密码)
.then(功能(用户凭证){
console.log(userCredential.user);
$(“#错误”).append(“
登录成功,欢迎光临”); console.log(“成功”) }) .catch(函数(错误){ //在这里处理错误。 var errorCode=error.code; var errorMessage=error.message; //if(error){//不再需要 console.log(错误消息) $(“#errors”).append(“
”+error.message+”


”); }); });
这是因为您试图在
catch()方法中检测成功

由于该方法返回一个承诺,您应该使用
then()
方法,如下所示:

 document.getElementById("login").addEventListener("click", function(){
            var email = $('#email').val();
            var password = $('#password').val();
            app.auth().signInWithEmailAndPassword(email, password)
             .then(function(userCredential) {
                    console.log(userCredential.user);
                    $("#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")
             })
             .catch(function(error) {
             // Handle Errors here.
               var errorCode = error.code;
               var errorMessage = error.message;

               // if (error) { // Not needed anymore
                   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>');


         });
 });
document.getElementById(“登录”).addEventListener(“单击”,函数(){
var email=$('#email').val();
var password=$('#password').val();
app.auth().signiWithEmailandPassword(电子邮件,密码)
.then(功能(用户凭证){
console.log(userCredential.user);
$(“#错误”).append(“
登录成功,欢迎光临”); console.log(“成功”) }) .catch(函数(错误){ //在这里处理错误。 var errorCode=error.code; var errorMessage=error.message; //if(error){//不再需要 console.log(错误消息) $(“#errors”).append(“
”+error.message+”


”); }); });
太棒了,谢谢@excitedmicrobe谢谢!:-)太棒了,谢谢@excitedmicrobe谢谢!:-)