Javascript创建帐户未链接到Firebase数据库

时间:2019-01-27 00:02:10

标签: javascript jquery forms firebase firebase-realtime-database

我已经在index.html文件中建立了一个注册表单,并将其连接到index.js,以便当用户在相应的框中键入其电子邮件和密码并单击“提交”时'按钮,它将其详细信息添加到数据库中。

但是,什么都没有添加到数据库,并且控制台中没有错误。 “ firebase-database”已包含在html head标签内。

这是HTML文件:

<!DOCTYPE html>
<html lang="en" dir="ltr">
  <head>
    <meta charset="utf-8">
    <title>Hobbyist</title>
    <link rel="stylesheet" href="style.css" />
    <link href="https://fonts.googleapis.com/css?family=Poppins" rel="stylesheet">
    <link href="https://fonts.googleapis.com/css?family=Ubuntu" rel="stylesheet">
    <script src="https://www.gstatic.com/firebasejs/5.8.1/firebase.js"></script>
    <script src="https://www.gstatic.com/firebasejs/5.8.1/firebase-app.js"></script>
    <script src="https://www.gstatic.com/firebasejs/5.8.1/firebase-auth.js"></script>
    <script src="https://www.gstatic.com/firebasejs/5.8.1/firebase-database.js"></script>
    <script src="https://cdn.firebase.com/libs/firebaseui/3.1.1/firebaseui.js"></script>
    <link type="text/css" rel="stylesheet" href="https://cdn.firebase.com/libs/firebaseui/3.1.1/firebaseui.css" />
    <script src="https://code.jquery.com/jquery-3.2.1.min.js" integrity="sha256-hwg4gsxgFZhOsEEamdOYGBf13FyQuiTwlAQgxVSNgt4=" crossorigin="anonymous"></script>
    <script type = "text/javascript" src="index.js"></script>
  </head>
  <body>
  <div id="sign-up">
    <h2>SIGN UP</h2>
    <form action="index.html" method="post">
      <input type="email" placeholder="Email..." id="create-email"><p />
      <input type="password" placeholder="Password..." id="create-password"><p />

      <button class="button" id="create-account">CREATE ACCOUNT</button>
    </form>
  </div>
  </body>
</html>

这是JavaScript文件:

    (function() {
      // the config details have been removed for security reasons
      var config = {
      apiKey: "---",
      authDomain: "---",
      databaseURL: "---",
      projectId: "---",
      storageBucket: "---",
      messagingSenderId: "---"
    };
    firebase.initializeApp(config);

    $(document).ready(() => {
      $('#create-account').click(() => {
        var email = document.getElementById('create-email').value;
        var password = document.getElementById('create-password').value;

        var db = firebase.database();

        db.ref('users/' + email).set({
          email: email,
          password: password
        });
      });
    });

 }());

我已经搜索了一种向数据库添加信息的方法,但是没有找到任何东西。有什么建议吗?

1 个答案:

答案 0 :(得分:1)

我们需要在此处查看HTML以及要报告的某种形式的错误。捕获的点击事件可能已关闭。控制台中什么也没有的事实需要检查,因为Firebase SDK中当前有一些东西表明它将被弃用。我还将建议将用户发布给用户参考,而不是上面的用户参考。 Firebase的文档存储功能将帮助您完成我认为要完成的任务。

var db = firebase.database()
db.ref("/users").set({
  email: email,
  password: password
});

我要在这里检查的另一件事是用于Firebase的.push()方法。 set()方法将覆盖数据库中的任何用户。

最重要的是,这里有一些问题需要回答才能做出准确的解决方案。

相关问题