如何在Firebase中存储HTML页面各个字段的不同副本?

问题描述:

我使用Firebase作为我的应用的实时数据库。在JavaScript文件中使用JQuery。如何在Firebase中存储HTML页面各个字段的不同副本?

这是我在Firebase中的数据库结构。

users 
    |--- email: "[email protected]" 
    |--- name: "pavan" 

我能nameemail字段的值存储在我的数据库。但是,对于每次提交,Firebase中以前的值都会被新值覆盖。

我的问题是,如何在不覆盖以前的值的情况下将nameemail字段值的不同副本存储在firebase中?

这些是我的应用程序的摘录。

JavaScript文件:

$(document).ready(function() { 

    // Submit Button 
    $('#submitBtn').click(function() { 

     var inputNameValue = $('#inputName').val(); 
     var inputEmailValue = $('#inputEmail').val(); 

     // Get a reference to the database service 
     var databaseRef = firebase.database().ref('users/'); 

     // Setting the input field values into the database 
     databaseRef.set({ 
      name: inputNameValue, 
      email: inputEmailValue 
     }); 

     // Empties the fields after pushing the data into firebase 
     $('#inputName').val(''); 
     $('#inputEmail').val(''); 
    }); 

}); 

HTML文件:

<body> 
    <div class="mainDiv" align="right"> 
     <h1 align="left">Firebase Web App</h1> 
     <br> 
     <div align="left" class="form-group"> 
      <label for="inputName">Name:</label> 
      <input type="text" class="form-control" id="inputName" placeholder="Enter your name"> 
     </div> 
     <div align="left" class="form-group"> 
      <label for="inputEmail">Email:</label> 
      <input type="text" class="form-control" id="inputEmail" placeholder="Enter your email"> 
     </div> 
     <button id="submitBtn"><i class="fa fa-arrow-right" aria-hidden="true"></i></button> 
    </div> 

    <script src="https://www.gstatic.com/firebasejs/3.7.8/firebase.js"></script> 
    <script src="firebase-init.js"></script> 
    <script src="index.js"></script> 
</body> 

您需要以存储领域的不同副本在你的数据库中添加push()。尝试这个。它肯定会工作!

databaseRef.push().set({ 
    name: inputNameValue, 
    email: inputEmailValue 
}); 

uid是由火力地堡认证系统中使用的名称,即,.onAuthStateChanged得到与通常与update使用(不设置)一个UID填充。因此,大多数应用程序将具有像users这样的结构,每个孩子都是一个uid键。