Javascript Firebase身份验证不起作用

Javascript Firebase身份验证不起作用,javascript,html,firebase,firebase-authentication,Javascript,Html,Firebase,Firebase Authentication,我一直在使用Firebase进行身份验证,只要有两种类似的警报方法,我就可以让它工作: var x; var y; function boo() { if (document.getElementById('email') !== null && document.getElementById('password') !== null) { x = document.getElementById("email").value; y = docum

我一直在使用Firebase进行身份验证,只要有两种类似的警报方法,我就可以让它工作:

var x;
var y; 

function boo() {
   if (document.getElementById('email') !== null && document.getElementById('password') !== null) {
      x = document.getElementById("email").value;
      y = document.getElementById('password').value;
      alert(x);
      alert(y);
      const auth = firebase.auth();
      auth.createUserWithEmailAndPassword(x, y);
      } else {
            ...
      }
}
但是,如果我删除了这两个警报方法,那么Firebase中不会发送或显示任何内容,并且在控制台中也没有看到任何错误。我希望有人知道发生了什么,因为我不想每次有人注册时都显示电子邮件和密码

以下是HTML:

<form class="signupForm">
    <input type="email" class="inputs" onblur="validateForm()" id="email" required name="email" placeholder="Email" />
    <input type="password" class="inputs" id="password" required name="password" placeholder="Password" />
    <button id="btn" class="buttons" onclick="boo()">Signup</button>
</form> 
将标记替换为

使用此代码检查错误:

auth.createUserWithEmailAndPassword(email, 
password).then(function(user) {
   var user = firebase.auth().currentUser;
   console.log(user); // Optional
}, function(error) {
   // Handle Errors here.
   var errorCode = error.code;
   var errorMessage = error.message;
});
检查您的firebase配置信息:

  // Initialize Firebase
  // TODO: Replace with your project's customized code snippet
  var config = {
    apiKey: "<API_KEY>",
    authDomain: "<PROJECT_ID>.firebaseapp.com",
    databaseURL: "https://<DATABASE_NAME>.firebaseio.com",
    storageBucket: "<BUCKET>.appspot.com",
    messagingSenderId: "<SENDER_ID>",
  };
  firebase.initializeApp(config);
同样在firebase控制台->身份验证中,检查登录方法电子邮件/密码是否已启用

将标记替换为

使用此代码检查错误:

auth.createUserWithEmailAndPassword(email, 
password).then(function(user) {
   var user = firebase.auth().currentUser;
   console.log(user); // Optional
}, function(error) {
   // Handle Errors here.
   var errorCode = error.code;
   var errorMessage = error.message;
});
检查您的firebase配置信息:

  // Initialize Firebase
  // TODO: Replace with your project's customized code snippet
  var config = {
    apiKey: "<API_KEY>",
    authDomain: "<PROJECT_ID>.firebaseapp.com",
    databaseURL: "https://<DATABASE_NAME>.firebaseio.com",
    storageBucket: "<BUCKET>.appspot.com",
    messagingSenderId: "<SENDER_ID>",
  };
  firebase.initializeApp(config);
同样在firebase控制台->身份验证中,检查登录方法电子邮件/密码是否已启用

使用event.preventDefault,如下所示:

async function handleSubmit(event) {
    event.preventDefault();
    const email = event.target.elements.email.value;
    const password = event.target.elements.password.value;
    // alert(email)
    // alert(password)
    await createNewUserWithFirebase(email, password);
}
使用event.preventDefault,如下所示:

async function handleSubmit(event) {
    event.preventDefault();
    const email = event.target.elements.email.value;
    const password = event.target.elements.password.value;
    // alert(email)
    // alert(password)
    await createNewUserWithFirebase(email, password);
}


删除警报时,创建用户行之前的x和y值是多少?添加到createUserWithEmailAndPassword“then”和“catch”并记录响应,以查看发生了什么事情它们只是声明了没有任何值。@mur7ay您能给我看一下包含电子邮件和密码输入的html代码吗?@badisMerabet删除警报时,我也添加了html,“创建用户行前的x和y值是多少?添加到createUserWithEmailAndPassword”“then”“和”“catch”“并记录响应,看看发生了什么事情,它们只是声明了没有任何值。@mur7ay您能给我看包含电子邮件和密码输入的html代码吗?@badisMerabet我也添加了html,请告诉我显示了什么。”在控制台中,我添加了您建议的内容,但控制台中没有显示任何消息。但是,当我添加以下内容时:auth.createUserWithEmailAndPasswordx,y.thenfunctionvalue{console.logvalue;}.catchfunctionerror{console.logerror;};我收到代码:身份验证/网络请求失败,消息:网络错误,如超时、连接中断或无法访问主机。我已更新我的答案。再试一次,让我知道。为你高兴:!让我知道控制台中显示的内容我添加了您建议的内容,但控制台中没有显示任何消息。但是,当我添加以下内容时:auth.createUserWithEmailAndPasswordx,y.thenfunctionvalue{console.logvalue;}.catchfunctionerror{console.logerror;};我收到代码:身份验证/网络请求失败,消息:网络错误,如超时、连接中断或无法访问主机。我已更新我的答案。再试一次,让我知道。为你高兴:!